《2025年全国计算机等级考试二级C语言考试大纲.docx》由会员分享,可在线阅读,更多相关《2025年全国计算机等级考试二级C语言考试大纲.docx(24页珍藏版)》请在优知文库上搜索。
1、2025年全国计算机等级考试二级C语言考试大纲基本要求1 .熟悉VisualC+6.0集成开发环境。2 .掌握结构化程序设计的方法,具有良好的程序设计风格。3 .掌握程序设计中简单的数据结构和算法并能阅读简单的程序。4 .在VisualC+6.0集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力考试内容一、C语言程序的结构1 .程序的构成,main函数和其他函数。2 .头文件,数据说明,函数的开始和结束标志以及程序中的注释。3 .源程序的书写格式。4 .C语言的风格。二、数据类型及其运算1.C的数据类型(基本类型,构造类型,指针类型,无值类型)及其定义方法。2 .C运算符的种类
2、、运算优先级和结合性。3 .不同类型数据间的转换与运算。4 .C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。三、基本语句1.表达式语句,空语句,复合语句。2.输入输出函数的调用,正确输入数据并正确设计输出格式。四、选择结构程序设计1 .用if语句实现选择结构。2 .用SWitCh语句实现多分支选择结构。3 .选择结构的嵌套。五、循环结构程序设计1. for循环结构。2. whiIe和do-whiIe循环结构。3. continue语句和break语句。4. 循环的嵌套。六、数组的定义和引用1.一维数组和二维数组的定义、初始化和数组元素的引用。
3、2.字符串与字符数组。七、函数1.库函数的正确调用。2 .函数的定义方法。3 .函数的类型和返回值。4 .形式参数与实在参数,参数值传递。5 .函数的正确调用,嵌套调用,递归调用。6 .局部变量和全局变量。7 .变量的存储类别(自动,静态,寄存罂,外部),变量的作用域和生存期。八、编译预处理1.宏定义和调用(不带参数的宏,带参数的宏)。2. “文件包含”处理。九、指针1 .地址与指针变量的概念,地址运算符与间址运算符。2 .一维、二维数组和字符串的地址以及指向变量、数组、字符串、函数、结构体的指针变量的定义。通过指针引用以上各类型数据。3 .用指针作函数参数。4 .返回地址值的函数。5 .指针
4、数组,指向指针的指针。十、结构体(即“结构”)与共同体(即“联合”)1 .用typedef说明一个新类型。2 .结构体和共用体类型数据的定义和成员的引用。3 .通过结构体构成链表,单向链表的建立,结点数据的输出、删除与插入。十一、位运算1 .位运算符的含义和使用。2 .简单的位运算。十二、文件操作只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘1/0系统)不要求。1 .文件类型指针(Fl1.E类型指针)2 .文件的打开与关闭(fopen,fclose)o3 .文件的读写(fputc,fgetc,fputs,fgets,fread,fwrite,fprintf,fsc
5、anf函数的应用),文件的定位(rewind,fseek函数的应用)。考试题型(1)选择。一一40(2)程序填空。一18(3)程序改错。18(4)程序编程。24考试时间3.30-4.3120nin无纸化考试总体上必须清楚的:1)程序结构是三种:顺序结构,循环结构(三个循环结构),选择结构(if和switch)2)读程序都要从main。入口.然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.4)bit是位是指为O或者1。byte是指字节,一个字节=八个位.5)一定要记住二进制如何划成十进制。概念常考到的:1、编译预
6、处理不是C语言的一部分,不再运行时间。C语言编译的程序称为源程序,它以ASCIl数值存放在文本文件中。2、每个C语言程序中main函数是有且只有一个。3、在函数中不可以再定义函数。4、算法的是一定要有输出的,他可以没有输入。5、break可用于循环结构和SWitCh语句。6、逗号运算符的级别最低。第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了。关键字不可以作为用户标识符号。maindefinescantprintf都是关键字。迷惑你的地方If是可以做为用户标识符。因为If中的第一个字母大写了,所以不是
7、关键字。2)实型数据的合法形式:2. 333e-l就是合法的,且数据是2.333X1OT考试口诀:e前e后必有数,e后必为整数。.3)字符数据的合法形式::,是字符占一个字节,“是字符串占两个字节(含有一个结束符号)。,0,的ASCIl数值表示为48,a的ASen数值是97,A的ASCIl数值是65。4)整型一般是两个字节.字符型是一个字节,双精度一般是4个字节:.考试时候一般会说,在16位编译系统,或者是32位系统。碰到这种情况,不要去管,一样做题。掌握整型一般是两个字节,字符型是一个字节,双精度一般是4个字节就可以了。5)转义字符的考查:在程序中inta=0x6d,是把一个十六进制的数给变
8、量a,注意这里的Ox必须存在。在程序中inta=06d,是一个八进制的形式,在转义字符中,x6d才是合法的,0不能写,并且X是小写。141是合法的。108是非法的,因为不可以出现8。转义字符意义ASCIl码值(十进制)a响铃(BE1.)007b退格(BS)008f换页(FF)012n换行(1.F)010r回车(CR)013t水平制表(HT)009v垂直制表(VT)OllW反斜杠092?问号字符063单引号字符039双引号字符0340空字符(NU1.1.)000ddd任意字符三位八进制xhh任意字符二位十六进制6)算术运算符号的优先级别:同级别的有的是从左到右,有的是从右到左。7)强制类型转换:
9、一定是(int)a不是int(八),注意类型上一定有括号的。注意(int)(a+b)和(int)a+b的区别。前是把a+b转型,后是把a转型再加b。8)表达式的考查:是表达式就一定有数值。K值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值.自加、自减表达式:假设a=5,+a(是为6),a+(为5);运行的机理:+a是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个+a表达式的数值为6,而a是先用该表达式的数值为5,然后再把a的数值加上1为6,再放到变量a中。进行了+a和a+后在下面的程序中再用到a的话都是变量a中的6了。考试口头:+在前先加后用,+在
10、后先用后加。逗号表达式:优先级别最低;表达式的数值逗号最右边的那个表达式的数值。(2,3,4)的表达式的数值就是4。9)位运算的考杳:会有一到二题考试题目。总的处理方法:几乎所有的位运算的题目都要按这个流程来处理(先把十进制变成二进制再变成十进制)。例1:chara=6,b;b=a2;这种题目的计算是先要把a的十进制6化成二进制,再做位运算。一定要记住,在没有舍去数据的时候,左移一位表示乘以2;右移一位表示除以2。10)018的数值是非法的,八进制是没有8的,逢8进1。11)%符号两边要求是整数。不是整数就错了。12)两种取整丢小数的情况:1、inta=1.6;2、(int)a;,笫二章1)
11、printf函数的格式考查:%d对应整型;%c对应字符;%f对应单精度等等。宽度的,左对齐等修饰。%ld对应longint;%lf对应double。2) scanf函数的格式考察:注意该函数的第二个部分是&a这样的地址,不是a;SCanf(懦*d%d,&a,&b,&c);跳过输入的第三个数据。3) putchar,getchar函数的考查:chara=getcharO是没有参数的,从键盘得到你输入的一个字符给变量a。putchar(y,)把字符y输出到屏幕中。4)如何实现两个变量X,y中数值的互换(要求背下来)不可以把x=y,y=x;要用中间变Itt=x;x=y;y=t5)如何实现保留三位小数
12、,第四位四舍五入的程序,(要求背下来)x=(int)(x*1000+0.5)/1000.0这个有推广的意义,注意X=(int)X这样是把小数部分去掉。第三章特别要注意:C语言中是用非。表示逻辑真的,用。表示逻辑假的。1)关系表达式:.表达式的数值只能为1(表示为真),或0(表示假)当关系的表达是为真的时候得到Io如98这个是真的,所以表达式的数值就是1;2)逻辑表达式:.只能为1(表示为真),或0(表示假)a) 共有&!三种逻辑运算符号。b) !&|I优先的级别。c) 注意短路现象。考试比较喜欢考到。d) 要表示X是比O大,比IO小的方法。(KXGO是不可以的(一定记住)。是先计算OG得到的结
13、果为1或则0;再用0,或1与10比较得到的总是真(为1)。所以一定要用(0x)S(x10)表示比。大比10小。3)if语句else是与最接近的if且没有else的相组合的。4)条件表达式:.表达式1?表达式2:表达式3注意是当非0时候是表达式2的数值,当为0是就是表达式3的数值。考试口诀:真前假后。5) switch语句:a) 一定要注意有break和没有break的差别,没有break时候,只要有一个CaSe匹配了,剩下的都要执行,有break则是直接跳出TSWiCh语句。b) SWitCh只可以和break一起用,不可以和COntJnUe用。笫四常1)三种循环结构:a) for():whi
14、leO;do-WhiIe()三种。b) for循环当中必须是两个分号,千万不要忘记。c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环。d)do-while()循环的最后一个WhiIe();的分号一定不能够丢。(当心上机改错)2)break和continue的差别记忆方法:.break:是打破的意思,(破了整个循环)所以看见break就退出整个一层循环。continue:是继续的意思,(继埃循环运算),但是要结束本次循环,就是循环体内剜下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。3)嵌套循环就是有循环里面还有循环,这种比较复杂,要一层一层一步一步耐心的计算,一般记住两层是处理二维数组的。4)while(c=getchar()!,n,)和while(c=getchar!=,n,)的差别先看a=3!=2和(a=3)!=2的区别:(!=号的级别高于=号所以第一个先计算3!=2)第一个a的数值是得到的1;第二个a的数值是3。考试注意点:括号在这里的重要性。第五章函数:是具有一定功能的一个程序块;1)函数的参数,返回数值(示意图)Xmain()inta三5,b=6,c;c=add(a.b);Printf(%d”,c);调用函数a,b是实参整个函数得到一个数值就是Add函数的返回数值。intadd(intx,inty)(intz;z=x+y;retu