全国计算机等级考试二级C语言题型分析.

《全国计算机等级考试二级C语言》资格考试题型分析

二级C考试分笔试和机试两部分,两部分总分均为100分,两部分考试均需60分以上才能合格发放证书。若其中一科(笔试或机试)通过,另一科可在下一次考试中补考,若补考合格发放证书。若二科均在85分以上,在合格证书上将加印“优秀”字样,若二科均在70分以上,在合格证书上将加印“良好”字样。 (一)笔试

笔试内容分两部分。公共基础知识考核内容:30分;C语言基础知识考核内容:70分。题型分析如下:

1、单向选择题40道题,共70分。 分值分布如下:

其中(1)-(10)、(21)-(40)小题,每題2分,(11)-(20)小题,每题1分。 考核内容分布如下:

(1)-(10)小题为公共基础知识考核内容,共计20分; (11)-(40)小题为C语言知识考核内容,共计50分。 2、填空题15个空,每空2分,共30分。 考核内容分布如下:

(1)-(5)空为公共基础知识考核内容,共计10分; (6)-(15)空为C语言知识考核内容,共计20分。 (二)机试

机试三道题:程序填空题,30分;程序修改题,30分;程序设计题,40分。 1、程序填空题

通常会给出一段源代码,设计三个空需要你来填写。每空10分。 例如: #include #include #define M 5 #define N 20

void fun(char (*ss)[N]) { int i, j, k=0, n, m, len; for(i=0; i { len=strlen(ss[i]); if(i==0) n=len; if(len>n) {

/**********found**********/ n=len; ___1___=i; } } for(i=0; i if (i!=k) { m=n; len=strlen(ss[i]);

/**********found**********/ for(j=___2___; j>=0; j--) ss[i][m--]=ss[i][j];

for(j=0; j

/**********found**********/ ___3___='*'; } } main()

{ char ss[M][N]={\ int i;

printf(\ for(i=0; i printf(\ fun(ss);

printf(\ for(i=0; i }

2、程序修改题

通常会给出一段源代码,设计2-3个错误需要你来修改。修改好一处错误得分10分(若有3处错误)或15分(若有2处错误)。例如: #include long fun(int g) {

/**********found**********/ switch(g); { case 0: return 0;

/**********found**********/ case 1 ;case 2 : return 1 ; }

return( fun(g-1)+fun(g-2) ); } main() { long fib; int n;

printf(\ fib=fun(n);

printf(\ }

3、程序设计题

通常会给出一段源代码,要求你来设计其中的一个函数。完全编好,且运行正确得分40分,无中间过程得分。例如:

2010全国计算机等级考试二级C语言》资格考试教材及出题比例

教材:《全国计算机等级考试》二级教程----C语言程序设计(2010年版),书中共分16章节内容对理论考试内容进行了详细的介绍。第17章介绍机试操作内容。

通过对最近3次等级考试真题分析,各章内容及出题比例大约如下表所示。

章序号 第1章 程序设计基本概念 主要考核知识点:了解C程序、程序设计、算法、模块化和结构化程序设计等概念 学习方法:理解+记忆 第2章 C程序设计的初步知主要考核知识点:了解C程序格式、标识符、常量、变量以及算术识 运算符及算术表达式、赋值运算符和赋值表达式、自加/减以及逗号运算符 学习方法:编写简单C程序加强理解和记忆 第3章 顺序结构 主要考核知识点:printf()、scanf()函数的应用,复合语句及空语句特点及学习方法 的应用,顺序程序设计思想 学习方法:理解顺序程序设计思想,设计一些典型的顺序程序,如计算圆的面积、体积,三角形面积等 第4章 选择结构 主要考核知识点:了解关系运算符和关系表达式;掌握if语句的几种格式,switch语句、break语句,掌握条件表达式(唯一的三目运算符)的应用 学习方法:理解选择结构程序设计思想,设计一些典型的选择结构程序,如比较2、3、4个数大小,按等级输出学生成绩,计算分段函数,解一元二次方程等 第5章 循环结构 主要考核知识点:熟练掌握while、do while、for循环语句的格式及应用, 学习方法:理解循环结构程序设计思想,设计一些典型的循环结构程序,如累加和,阶乘,求π的近似值,Fibonacci数列,求素数,求水仙花数等 第6章 字符型数据 主要考核知识点:使用printf()、scanf()函数进行字符型数据的输入和输出,putchar()、getchar()函数的应用 学习方法:设计字符处理的各类应用程序,如ASCII字符处理,统计各类字符数,密码译码等 第7章 函数 主要考核知识点:熟练掌握函数的定义和返回值、函数调用、函数申明、函数之间值传递等概念 学习方法:理解为什么要使用函数,将前面设计的一些程序打包成函数 第8章 地址和指针 主要考核知识点:理解指针、指针变量、指针变量的基类型等基本概念 学习方法:理解指针的概念,设计一些简单的指针应用程序 第9章 数组 主要考核知识点:熟练掌握一维、二维数组的定义和引用;理解数组和指针结合,数组名或数组元素作函数的参数的应用 学习方法:理解好一维、二维数组的概念及应用,数组指针和指针数组的应用,熟练冒泡排序、选择排序程序 第10章 字符串 主要考核知识点:掌握字符串及运用指针和数组处理字符串,处理字符串常用的函数,如gets()、puts()、strcpy()、strcmp()、strlen()、strcat()等 学习方法:理解课本上给出的字符串处理的例题 第11章 对函数的进一步讨论 主要考核知识点:函数的递归调用 学习方法:理解课本上的计算n!、求平方根的迭代公式求某数的平方根的递归算法 第12章 C语言中用户标识主要考核知识点:理解全局变量、局部变量,auto、register、static、符的作用域和存储类 extern存储类别的应用 学习方法:理解+记忆 第13章 编译预处理和动态存储分配 主要考核知识点:主要理解宏替换,特别是带参的宏 学习方法:通过课后习题程序理解宏替换的作用 第14章 结构体、共用体和用主要考核知识点:主要掌握结构体类型的说明、结构体类型的变量户定义类型 /数组/指针变量的定义、给结构体变量/数组赋值、引用结构体变量中的数据等内容;链表的操作 学习方法:通过例题及习题中的代码来理解及记忆 第15章 位运算 主要考核知识点:理解5个位运算,按位取反、左移、右移、按位与、按位或、按位异或 学习方法:理解+记忆 第16章 文件 主要考核知识点:主要掌握文件指针、文件的打开和关闭;文件输入输出函数,如getc(fgetc)、putc(fputc)、feof、fscanf、fprintf、fgets、fputs、fread、fwrite、fseek、ftell、rewind等 学习方法:理解+记忆

2010全国计算机等级考试二级C语言》资格考试答题策略及技巧

(一)笔试

可考虑以下做题顺序(仅供参考)

1、先做公共基础题,选择题(1)-(10),填空题(1)-(5)空。

2、接下来完成C语言的基础题,选择题(11)-(20),1分题,考核一些基本概念,如标识符是否合法、整型/实型常量、运算符与表达式、简单输入输出格式控制、if、switch语句、for、while、do while等的简单应用。

3、再接着完成选择题(21)-(40),这20个选择题尤其是后10个选择题,都有一定难度,都会给定一段代码,根据代码做选择,因此,需要读懂C的简单代码然后做了选择。

4、最后完成填空题(6)-(15)空。也需读得懂C程序,还需判断出题意图,才能填好空。难度较高。

(二)机试

题目顺序为:程序填空题,程序修改题,程序设计题。按顺序完成即可。 1、程序填空题

在源代码中会给出需填空的地方,如s->data=___1___; 通常还是比较简单。

解题方法:先读懂源程序,了解程序的功能,然后试着边填空边调试,分析输出结果,以找到正确的解。

程序填空题的特点和注意事项:

(1)程序填空的试题中通常包含三个空需要填写。

(2)试题中用\来提示且在下一行或下二行注明填空的位置及编号,如___1___。 (3)程序填空考核对程序的整体把握,出题点可能是:for循环语句的初始化或条件判断、函数返回值、if语句的条件判断、链表中指针如何移动、文件操作相关函数的参数等。

(4)特别要注意的是:只能在填空的位置填写语句或表达式,不要增行或删行,不要改动程序行的顺序,更不要改动程序的结构。

程序填空时,建议按以下步骤进行:

(1)首先仔细审题,了解试题的要求,看清楚试题给出的输入和输出例示,以便检验程序运行的结果是否正确。

(2)审视\所在函数,根据题义理解程序所采用的基本算法,做到心里有数。 (3)填好空后对测试程序进行检查是否有语法错误。当编译提示有语法错时,可参考编译提示来查找并改正错误。

(4)当不再出现语法错时,执行程序, 按照试题的示例给出的数据进行试算,若试算的结果与给出的输出结果相同时,该题就做对了;若试算的结果与给出的输出结果不同,就应进一步检查程序中的逻辑错误。

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4