全国计算机二级考试C语言考前5分钟必看知识点
1. C程序由函数构成,函数是C程序的基本单位。
2. 运行C程序的步骤:(源程序)编辑→编译(得目标程序)→连接→运行
3. 流程图中,椭圆→起止框;平行四边形→输入输出框;菱形→判断框;矩形→处理框。
4. 得到结构化程序的方法:自顶向下,逐步细化,模块化设计,结构化编码。
5. 字符型变量用来存放字符常量,其只能存放一个字符。
定义和赋值形式:char c1,c2;c1=’a’;c2=’b’;。
6. 不能把一个字符串常量赋给一个字符变量,而只能用字符型数组来存放字符串。
如:char c;c=”a”;是错误的;
Char c[10]={“China”};是正确的。
7. 只有求余运算符两侧均为整型,且其结果的符号与被除数一致。
如:-7/2=-3;7/(-2)=3;(-7)/(-2)=-3。
8. scanf(“%d%d%d”,&a,&b,&c);中“%d%d%d”要求以整数型式输入三个数据。
在输入数据时,在两数间以一个或多个空格间隔,也可以用Enter,Tab键,但不能用逗号。
如:3_ _ _4_ _5↙或3↙4_5↙或3(Tab键)4↙5↙。
9. 输入数据是不能规定精度如:scanf(“%7.1f”,&a);不合法;而scanf(“%7f”,&a);合法。
10. scanf(“%3c”,&ch);由于字符变量ch只能容纳一个字符,若从键盘连续输入3个字符“abc”,系统就把第一个字符“a”赋给字符变量ch。
11. 在用“%c”格式输入字符时空格字符和转义字符都作为有效字符输入。
如:scanf(“%c%c%c”,&c1,&c2,&c3);输入a_b_c↙,
字符‘a’送给c1,空格字符“_”送给c2;‘b’送给c3;
因为%c只要求读入一个字符,故后面不需用空格作为两字符的间隔。
12.Switch后面括号内表达式值不能是实型。
13. 只能住各应用数组元素而不能一次引用整个数组。
14. 可以用以下等价方法来使字符数组初始化:
1)char c[]={“I am boy”};
2) char c[]=“I am boy”;
3)char c[]={‘I’,’’,’a’,’m’,’’,’b’,’o’,’y’,’\0’};(注意,结尾应有’\0’)。
15. 字符数组输入输出的方法:
1)逐个字符输入输出。用%c输入或输出一个字符。
2)用%s将整个字符串一次输入或输出。
注意:a 用%s输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名,即printf(“%s”,c[0]);是错误的;
b scanf(“%s”,c)中输入项c是已定义的字符数组名;
c 如果利用一个scanf函数输入多个字符串时,则在输入时以空格分隔。
如:char s1[5],s2[5];scanf(“%s%s”,s1,s2);输入me_too↙,则”me”送给s1,”too”送给s2.
若char s[10];scanf(“%s”,s);输入me_too↙,则只将”me”送给s1。这是因为系统将空格当做输入字符串间的分隔号。
16. 不能将字符串常量或字符数组直接赋给一个字符数组,而应调用strcpy函数;
17. 一个源程序文件是一个编译单位,在程序编译时以源程序文件为单位进行编译,而非函数。
18. 有参函数定义的一般形式:
类型标识符 函数名 (类型说明 变量名)
{声明部分
语句部分}
19. 形参不能是常量和表达式。
20. 函数调用形式:1)函数语句。不要求函数带回值,只要求其完成一定操作。
2)函数表达式。要求函数带回一个确定的值以参加表达式运算。
3)函数参数。函数调用作为一个函数的实参。
21. 用户自己定义的函数在调用它的函数之后时,应在主调函数中对被调函数做声明。
22. 全局变量全部存放在静态存储区中。
23. 函数中局部变量默认为auto型。
24. 对静态局部变量static,编译时自动赋0或空字符,其限定的函数作用域仅限于本文件中。
自动变量若不赋初值,则其值为不确定的值。
25. 只有局部自动变量和形参可作为寄存器变量。
26. 用指针变量作为函数参数,在函数执行过程中是指针所指向的变量值发生变化,函数调用后,这下质的变化依然保留下来,这就改变了形参的值。
27. 定义字符指针:char *string=”I love China!”;printf(“%s\n”,string);
28. 注意:对数组的初始化:char str[14]={“I love China”};不能等价于
char str[14];str[]=”I love China”。
数组在定义时整体赋初值。赋值语句中整体赋值。
29. 指针数组的定义形式:
类型名 *数组名【数组长度】;
30. malloc函数原型为:
void *malloc(unsigned int size);
作用为:在内存中的动态存储区中分配一个长度为size的连续空间,此函数的值是一个分配域的起始地址(类型为void),若未能成功执行,则返回空指针NULL。
calloc函数原型为:
void *calloc(unsigned n,unsigned size);
作用为在内存的动态存储区中分配n个长度为size的连续空间。其返回一个指向分配域起始位置的指针,若分配不成功,则返回空指针NULL。
31. 共用体变量所占的内存长度等于最长的成员的长度;
共用体每一瞬间只有一个成员起作用,其他成员不起作用。即不是同时都存在和起作用。
共用体变量中起作用的成员是最后一次存放的成员,存入一个新成员后,原有成员就失去作用。
共用体变量的地址和其各成员的地址相同。
32. 整数左移n位相当于该数乘以2n。
33. fopen函数的调用形式通常为:
FILE *fp;fp=fopen(文件名 使用文件方式);
注意:用“w”方式打开的文件只能用于输出文件,如果原来已存在一个以该文件名命名的文件,则再打开时将该文件删去,然后重新建立一个新文件。
34. 在C语言中,对文件的存取是以字符(字节)为单位的,输入输出的数据流的开始和结束仅受程序控制。
35. 单目、三目和赋值运算符结合方向从右至左,其他运算符从左至右。
36. 运算符优先级:初等运算符>单目运算符>算术运算符>移位运算符>关系运算符>位运算符>逻辑运算符>条件运算符>赋值运算符。
展开阅读全文