计算机二级C语言考试重点,难点总结

发布 2019-09-16 12:57:00 阅读 5849

c 语言最重要的知识点复习资料。

笔试注意事项。

1、笔试满分100分,共两大题,选择70分40小题,填空30分15小题。c语言占70分,公共基础占30分。选择题的前10题和填空题的前5题考公共基础知识,其他考知识。

c语言笔试时间为2023年3月26日上午9:00-10:30。

2、选择用铅笔涂答题卡,填空用黑色签字笔在答题上写。

3、考前准备好身份证、准考证、2b铅笔、橡皮、黑色签字笔、手表等。

第一章c语言基本知识。

考点1】c程序。

c语言程序结构有三种: 顺序结构 , 循环结构(三个循环结构), 选择结构(if 和 switch)

考点2】main函数。

每个 c 语言程序中main 函数是有且只有一个。读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

考点3】存储形式。

计算机的数据在电脑中是以二进制的形式保存。最低的存储单元是bit(位),位是由为 0 或者1构成。 byte 是指字节, 一个字节 = 八个位。数据存放的位置就是它的地址。

考点4】注释。

是对程序的说明,可出现在程序中任意合适的地方,注释从“/*开始到最近一个“*/结束,其间任何内容都不会被计算机执行,注释不可以嵌套。

考点5】书写格式。

每条语句的后面必须有一个分号,分号是语句的一部分。一行内可写多条语句,一个语句可写在多行上。

考点6】标识符。

合法的用户标识符考查:

合法的要求是由字母,数字,下划线组成。有其它元素就错了。

并且第一个必须为字母或则是下划线。第一个为数字就错了。

c语言标识符分如下3类。

1)关键字。它们在程序中有固定的含义,不能另作他用。如int、for、switch等。

2)预定义标识符。预先定义并具有特定含义的标识符。如define、include等。

3)用户标识符。用户根据需要定义的标识符,符合命名规则且不与关键字相同。

关键字不可以作为用户标识符号。main define scanf printf 都不是关键字。迷惑你的地方if 是可以做为用户标识符。

因为if 中的第一个字母大写了,所以不是关键字。

考点7】实型数据。

实型数据的合法形式:小数形式和指数形式。掌握判定指数形式合法性。

2.333e-1 就是合法的,且数据是2.333×10-1。

考试口诀:e 前e 后必有数,e 后必整数。

考点8】字符。

字符数据的合法形式::

1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。

0' 的ascii 数值表示为48,'a' 的ascii 数值是97,'a'的ascii 数值是65。

字符型和整数是近亲:

char a = 65 ;

printf(“%c”, a); 得到的输出结果:a

printf(“%d”, a); 得到的输出结果:65

一般考试表示单个字符错误的形式:'65' "1"

字符是可以进行算术运算的,记住: '0'-0=48

大写字母和小写字母转换的方法: 'a'+32='a' 相互之间一般是相差32。

考点9】整型数据。

整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节:

考试时候一般会说,在16 位编译系统,或者是32 位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节, 字符型是一个字节,双精度一般是4 个字节就可以了。

考点10】转义字符。

转义字符的考查:

在程序中 int a = 0x6d,是把一个十六进制的数给变量a 注意这里的0x 必须存在。

在程序中 int a = 06d, 是一个八进制的形式。

在转义字符中, ’x6d’ 才是合法的,0 不能写,并且x 是小写。

\141’ 是合法的, 0 是不能写的。

\108’是非法的,因为不可以出现8。

考点11】算术运算。

算术运算符一共有+、—这五个。%符号两边要求是整数。不是整数就错了。

三种取整丢小数的情况:不是四舍五入是舍掉小数部分。

、int a =1.6;

、(int)a;

考点12】强制类型转换。

将一个运算对象转换成指定类型,格式为(类型名)表达式。

一定是 (int)a 不是 int(a),注意类型上一定有括号的。

注意(int)(a+b) 和(int)a+b 的区别。前是把a+b 转型,后是把a 转型再加b。

考点13】赋值。

是表达式就一定有数值。

赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值。

复合赋值运算符:注意:a*=m+2 是 a=a*(m+2)

自加、自减表达式:假设a=5,++a(表达式的值为6), a++(表达式的值为5);

j=a++;等价于j=a;a=a+1; 而j=++a;等价于a=a+1;j=a;。

考试口诀:++在前先加后用,++在后先用后加。

考点14】逗号运算。

逗号表达式:优先级别最低; 表达式的数值逗号最右边的那个表达式的数值。

2,3,4)的表达式的数值就是4。

考点15】数制转换。

一定要记住二进制如何转换成十进制。

八进制是没有8 的,逢8 进1,018 的数值是非法的。

考点16】位运算。

会有一到二题考试题目。

c语言提供6种位运算符:按位求反~,按位左移<<,按位右移》,按位与&,按位异或|,按位或^。

总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。

异或运算的规则:0异或1得到1,0异或0得到0,1异或1得到0。可记为“相同为0,不同为1”。

见教材31页例1。

在没有舍去数据的时候,《左移一位表示乘以2;>>右移一位表示除以2。

第二章数据的输入输出(顺序结构)

考点1】printf函数。

格式为:printf(输出控制,输出列表)。输出控制是用一对双引号括起来的,包含格式说明和原样信息。输出列表包含若干输出项。

d对应整型,%f对应单精度实型,%c对应字符型,%o对应八进制无符号整型,%x对应无符号十六进制整型,%u对应无符号整型,%e对应指数型,%s对应字符串型。可在%和格式字符之间加一个数来控制数据所占的宽度和小数位数。

考点2】scanf函数。

格式为:scanf(输入控制,输入列表)

注意该函数的第二个部分是&a 这样的地址,不是a;

scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。

考点3】putchar与getchar函数。

可用于输出或输入单个字符,这两个函数是文件中的库函数,它们是printf与scanf函数的简化。

char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。

putchar(‘y’)把字符y 输出到屏幕中。

考点4】如何交换两个变量。

如何实现两个变量x ,y 中数值的互换(要求背下来)

不可以把 x=y ,y=x; 要用中间变量 t=x;x=y;y=t。

考点5】实现保留三位小数。

如何实现保留三位小数,第四位四舍五入的程序,(要求背下来)

float x=12.34567;

float y=((int)(x*1000+0.5))/1000.0;

这个有推广的意义,注意 x = int)x 这样是把小数部分去掉。

第三章选择结构。

特别要注意:c 语言中是用非0 表示逻辑真的,用0 表示逻辑假的。

考点1】关系运算。

关系运算符有6个,分别是》,>前四种优先级高于后两种。

关系表达式:

关系表达式真时为1,假时为0

当关系的表达是为真的时候得到1。如 9>8 这个是真的,所以表达式的数值就是1。

考点2】逻辑运算。

只能为1(表示为真),或0(表示假)

a) 共有三种逻辑运算符号。逻辑非(!)辑与(&&逻辑或(||

b) !优先的级别。

c) 注意短路现象。考试比较喜欢考到。

例a++|b++,如果表达式a++的值非零,则表达式b++不再执行。

d) 要表示 x 是比0 大,比10 小的方法。0【考点3】if语句。

可以单独出现,也可以与else匹配出现。if语句可以嵌套,这时else总是与离它最近的且没有与else匹配的if匹配。

注意if语句的子句是紧接if或else的一句,如有多句需要用{}括起来。

考点4】条件运算。

是唯一的三目运算符,格式:表达式1 ?表达式2 :表达式3

表达式1值为非0时,整个表达式值为表达式2的值,表达式1值为0时,整个表达式值为表达式3的值。考试口诀:真前假后。

考点5】switch语句。

a) 一定要注意有 break 和没有break 的差别,书上(53,54 页)的两个例子,没有break

时候,只要有一个case 匹配了,剩下的都要执行,有break 则是直接跳出了switch 语句。

b) switch 只可以和break 一起用,不可以和continue一起用。

c) switch(x) x:是整型常量,字符型常量,枚举型数据。

case 1: …不可以是变量。

case 2: …

switch后小括号里面的表达式不能为实型,case后表达式不能有变量。

口诀:switch表不为实,case表不为变。

第四章循环结构。

考点1】三种循环结构。

while();do- while();for()三种。三种结构的格式及执行顺序详见教材第页。

b)for 循环当中必须是两个分号,千万不要忘记。

c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。

d) do-while()循环的最后一个while();的分号一定不能够丢。(当心上机改错),do-while

循环是至少执行一次循环。

考点2】break与continue

break 和 continue 的差别。

记忆方法:break:是打破的意思,(破了整个循环)所以看见break 就退出这一层循环。

continue: 是继续的意思,是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。

计算机二级C语言真题分析

2011年3月二级c笔试真题分析。一 试题难度。自2008年初二级c考试大纲做出重大修改以来,已经进行了7次考试。由于上机考试采用从题库随机抽题的形式,每次题库内容只做少量增删,所以难度基本稳定。笔试采用统一命题的形式。如果把笔试真题的难度系数从0 最易 至10 最难 分级,那么这7次笔试的难度可以...

计算机等考二级C语言模拟试题

一。单项选择题。1.设int x 1,y 1 表达式 x y 的值是 a.0b.1c.b.int a 2 c.int a 2 2 2,3 d.int a 2 6.程序段的功能是将变量u s中的最大值赋给变量t。a.if u s t u t s b.t u if t t s c.if u s t s ...

计算机等考二级C语言模拟试题

2011年9月计算机等考二级c语言模拟试题。一。单项选择题。1.各种基本数据类型的存贮空间正确的长度排列为。2.下面的变量说明中是正确的。intn n 6 4,n 6 n 2 printf n d n 此程序的输出结果是。a.30b.24 c.60d.48 4.若有如下定义,则和 是对数组元素的正确...