Q:
-
printf为什么叫printf
-
scanf为什么叫scanf
-
datatype(数据类型): int,float,double,char,long...
-
loop(循环):for,while,dowhile ->区别与联系,适用场景
-
分支结构;if,if-else,else if,switch-case 区别与联系,适用场景
-
函数; 函数首部,函数语句,函数定义与函数实现,变量的作用域,函数的执行过程
-
C语言是谁写的?他被设计出来是用来干嘛的?他有什么优势呢?相对的缺陷是什么?
A:
1.官方解释:①printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。
格式输出,它是c语言中产生格式化输出的函数(在 stdio.h 中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。
简单点理解就是,在一段程序中你正确使用该函数,可以在该程序运行的时候输出你所需要的内容。
②printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用 printf 函数之前必须包含stdio.h文件。
个人理解:print译为打印,印刷,f(x)是函数的意思,组合在一起便是输出函数。
2.scanf()是C语言中的一个输入函数。
与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include <stdio.h>。(在有一些实现中,printf函数与scanf函数在使用时可以不使用预编译命令#include <stdio.h>。)
函数 scanf() 是格式输入函数,即按用户指定的格式从键盘上把数据输入到指定的变量之中。scanf() 从标准输入流stdin中读内容的通用子程序,可以说明的格式读入多个字符,并保存在对应地址的变量中。
scan有扫描,查看之意,是计算机对输入的字符进行扫描录入的过程。
3.
数据类型 | 名称&类型名 |
---|---|
整形与整型常量 | 【有符号】整形int、【有符号】短整型short【int】、【有符号】长整型long【int】、无符号整型unsigned【int】、无符号短整型unsigned【short】、无符号长整型unsigned long【int】 |
字符型与字符型常量 | 字符型char |
实型(浮点型)与实型常量 | 单精度浮点型float、双精度浮点型double |
4.一般来说,如果事先给定了循环次数,首选for语句;如果循环次数不明确,需要推荐其他条件控制循环,通常选用while语句或do-while语句;如果必须先进入循环,经循环体预算得到循环控制条件后,在判断是否进行下一次循环,则使用do-while语句。
5.C语言中的分支结构有单分支结构、双分支结构、和多分支结构三种。
这三种分支结构的区别在于:
(1)、单分支结构在满足条件时执行,不满足条件不执行;
(2)、在双分支结构中,如果条件表达式成立,则执行语句块1,否则,执行语句块2,所以双分支结构至少执行一次;
(3)、多分支结构的分支结构的嵌套中,分支结构的嵌套包含了单分支结构与双分支结构的特性,可以用单分支结构嵌套双分支结构,也可用双分支结构嵌套单分支结构,通俗的来讲就是分支结构中放入一个分支结构,当条件成立则执行分支结构中嵌套的分支结构;
(4)、switch语句可以理解成其他的分支结构的总和,switch集成了上述所有分支结构的特性,在有多种情况的时候才使用switch,当switch(条件)满足case 后面的常量,则执行对应的语句,若满足的条件未能匹配到对应的常量,则执行default后的语句,有default的switch语句是至少执行一次的,当然default也可省略不写,这样switch语句也可以一次都不执行。
6.
1函数定义的一般形式为:
.函数类型 函数名 (形式参数表){
函数实现过程
}
2函数首部由函数类型、函数名和形式参数表组成;函数体体现函数的实现过程,由一对大括号内的若干条语句组成,用于计算,或完成特定的工作,并用return语句返回运算的结果。
函数调用的一般形式为:
函数名(实际参数表)
3变量分为全局变量和局部变量,全局变量对全局都起作用,局部变量只对定义它的语句段起作用。
4函数的执行过程:
1、通过函数名找到函数入口地址 2、给形参分配空间 3、给形参传值 4、执行函数体语句 5、返回返回值,释放空间
7.
C语言诞生于美国的贝尔实验室,由丹尼斯·里奇(Dennis MacAlistair Ritchie)以肯·汤普森(Kenneth Lane Thompson)设计的B语言为基础发展而来,在它的主体设计完成后,汤普逊和里奇用它完全重写了UNIX,且随着UNIX的发展,c语言也得到了不断的完善。为了利于C语言的全面推广,许多专家学者和硬件厂商联合组成了C语言标准委员会,并在之后的1989年,诞生了第一个完备的C标准,简称“C89”,也就是“ANSI C”,截至2020年,最新的C语言标准为2018年6月发布的“C18”。
起初设计出来是为了设计操作系统,编写系统软件。
优点
C语言是普适性最强的一种计算机程序编辑语言,它不仅可以发挥出高级编程语言的功用,还具有汇编语言的优点,因此相对于其它编程语言,它具有自己独特的特点。具体体现为以下三个方面:
其一,广泛性。C语言的运算范围的大小直接决定了其优劣性。C语言中包含了34种运算符,因此运算范围要超出许多其它语言,此外其运算结果的表达形式也十分丰富。此外,C语言包含了字符型、指针型等多种数据结构形式,因此,更为庞大的数据结构运算它也可以应付。
其二,简洁性。9类控制语句和32个关键字是C语言所具有的基础特性,使得其在计算机应用程序编写中具有广泛的适用性,不仅可以适用广大编程人员的操作,提高其工作效率,同时还能够支持高级编程,避免了语言切换的繁琐。
其三,结构完善。C语言是一种结构化语言,它可以通过组建模块单位的形式实现模块化的应用程序,在系统描述方面具有显著优势,同时这一特性也使得它能够适应多种不同的编程要求,且执行效率高。
缺点
1.C语言的缺点主要表现为数据的封装性弱,这一点使得C在数据的安全性上有很大缺陷,这也是C和C++的一大区别。
2.C语言的语法限制不太严格,对变量的类型约束不严格,影响程序的安全性,对数组下标越界不作检查等。从应用的角度,C语言比其他高级语言较难掌握。也就是说,对用C语言的人,要求对程序设计更熟练一些。