全国计算机等级考试二级C要点研究与应试策略

2022-02-24 00:08贺安坤王婷婷周筑南马靖
计算机时代 2022年2期

贺安坤 王婷婷 周筑南 马靖

摘  要: “二级C”是全国计算机等级考试科目之一,工科专业学生的报考数量越来越多,但通过率一直不高。为了提高C 语言教学质量和“二级C”的通过率,在分析“二级C”考试题型及考点分布的基础上,探讨考试要点及应试策略。

关键词: 全国计算机等级考试; 二级C; 应试策略

中图分类号:G642          文献标识码:A     文章编号:1006-8228(2022)02-115-04

Research of key points of level two C in National Computer Rank

Examination and the strategy for taking examination

He Ankun, Wang Tingting, Zhou Zhunan, Ma Jing

(College of Information Science and Engineering, Shandong Agricultral University, Taian, Shandong 271018, China)

Abstract: Level two C language is one of the subjects of National Computer Rank Examination, there are more and more engineering students applying for the examination, but the passing rate has not been high. In order to improve the quality of C language teaching and the passing rate of level two C language, on the basis of analyzing the question types and the points of examination of level two C, the key points of examination and strategies of taking examination are discussed.

Key words: National Computer Rank Examination; level two C; strategies of taking examination

0 引言

为进一步加强在校大学生创新创业教育,培养学生的自主创新创业精神和综合实践能力,促进在校大学生的个性发展和素质的全面提高,大部分高校把创新创业实践学分纳入到了学生培养方案中。学生可以通过学术论文、科目竞赛、发明创造等方式取得创新学分,通过全国计算机等级考试二级及以上是重要的方式之一。因此近几年参加全国计算机等级考试(NCRE)的人数逐渐增加。理工科学生大都报考二级C,但通过率并不高,究其原因主要是考生对二级C的题型及考点分布不够熟悉。文章结合多年全国计算机等级考试的组织实施工作和二级C语言考前辅导经验,深入研究分析计算机等级考试二级C语言考核内容及考点分布,对非计算机专业的C语言教学和参加二级C语言的考生有较好的指导作用,在近几年的实践中效果良好,大大提高了二级C语言等级考试的通过率。

全国计算机等级考试(NCRE)由前国家教育委员会(现为教育部)批准,教育部考试中心主办,面向全社会具有计算机应用知识和技能的考生的全国性计算机水平测评。其目的在于以考促学,向社会推广和普及计算机知识,也为用人部门录用和考核工作人员提供一个统一、客观、公正的标准[1]。NCRE 自1994年开考,至今已举办61次,考試的人数逐年增多。到2020年底全国累计考生近9200万。目前NCRE 进行了重大改革,考试的形式、内容和科目都发生了很大的变化。考试形式全部改为无纸化上机考试,考试的科目、内容及合格标准也有较大调整,这就要求考生需要牢固掌握基础知识并具有一定的编程能力,同时熟悉二级C题型及考点分布才能顺利通过考试。

1 二级C题型简介

二级C科目考试时长120 分钟,考试环境为操作系统windows7, 开发环境为Microsoft Visual C++2010学习版,考试题型及分值如表1。

其中选择题的公共基础包括数据结构与算法、程序设计基础、软件工程基础、数据库设计基础的基本知识。C语言的基础知识主要包括三种基本结构(顺序、选择、循环)、数组、函数、字符串、指针、结构体等基础知识。操作题中程序填空题需补全程序中2-3个“空”,编译运行出结果;程序改错题一般有两处错误,考生改错后编译运行,这类题目的错误主要是语法错误或逻辑错误;程序设计题就是根据题目的要求写一个函数。

2 二级C要点分析及应试策略

2.1 选择题要点分析

选择题有40个单选题,包括计算机公共基础和C语言程序设计基础知识。公共基础选择题共10分,主要是基本概念,比较简单,考前结合近几年的考题复习,不会有太多的失分。下面对C语言基础知识部分研究分析。

C语言基础知识选择题

要点研究:C语言选择题主要考察C语言的各种数据类型、运算符和表达式,基本的输入输出,基本的控制结构,数组、指针的使用、结构体、文件和位运算;函数的定义、调用和变量作用域等。牢固掌握基本概念,抓住细节,结合指定教材认真复习。

应试策略:这类题目往往考查知识点细节,容易出错,考生在做这类题时,不要不加分析,一看就选,这样很容易选错,应从以下三方面进行准备。

⑴ 概念题:C语言需要理解的概念较多,学习时一定记住容易混淆的地方。例如:合法用户标识符:合法的标识符要求是由字母,数字,下划线组成,如有其他元素就错了,标识符的第一个元素必须为字母或下划线。因此一定要把概念掌握牢固。

⑵ 程序阅读题:掌握常用算法,重点考察学生的逻辑判断,循环,数组、函数定义,指针使用等。

程序举例:

void main()

{  int a[3][3],p,i;

p=&&a[0][0];

for (i=0;i<9;i++) p[i]=i+1;

printf("%d\n",a[1][2]);

}

程序的输出为:(A)3 (B)6 (C)9 (D)2 本题考察的主要知识点是:①数组与指针的关系;②数组的初始化和对数组元素的引用。在C语言中,数组与指针密切相关,数组中的任何元素都可以通过指针变量p访问。本题中实际输出的是第二行第三个元素,所以a[1][2]=6。这里要特别注意C语言中数组的下标从0开始,不要错选a[1][2]=3。

⑶ 善于使用排除法:如果有的题目中答案相似,可以采用排除法,试题中只有一个答案是正确的,但是会出现二个答案相似的,排查另外2个,将相似答案对比带入,正确答案一般在相似的当中[2]。

2.2 操作题要点分析及应试策略

操作题有三个大题,分别是程序填空题,程序改错题和程序设计题,大纲要求掌握简单的数据结构和算法并能阅读简单的程序,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。三个大题都给定一个功能函数,一般来说函数名为fun,在考试中认真研究fun函数即可。

2.2.1 程序填空题

要点分析:程序填空题一般为两个或三个空需要填写,填写的位置主要有如下几种:一种是出现在函数首部,考查函数返回值或参数类型;第二种是在变量的定义和初始化中,检查变量初始化类型或初始化值是否正确;第三种是在执行语句中,主要是在循环体或条件语句中,考查循环变量的变化,条件语句中关系表达式或逻辑表达式是否正确;第四种是出现在被调函数结束前,考查函数是否有返回值带回给调用函数,检查返回值放在哪个变量中。

应试策略:答题时考生应遵循五步答题法。①审题,首先分析题目中对给定函数要完成的功能,做到心中有数。②通读程序,填空题考查考生对整个程序的逻辑结构和数据结构的理解,考生不要把注意力集中在填写内容的附近,而应该通读整个fun函数和main函数。③在明确了出题人的思路之后,把注意力集中在fun函数的功能实现上。④根据空白语句位置,确定填写的内容,空白语句位置有下划线,将下划线删掉。填写时要考虑到考试系统的评分特点,切记不要对程序中的其他部分有任何改动,包括程序的分行、并行、添加注释等。⑤编译、链接运行和保存,考生做完后要进行保存是毋庸置疑的,另外還必须进行编译、组建(连接)和运行,一定养成这一良好习惯,这一习惯在做程序修改题和编程题时同样重要[3]。

2.2.2 程序改错题

要点分析:改错这类题,一般有2~3处错误,均在以“/*******found********/ ”为标志的下方,改动的地方也不大,切忌不要打破原程序结构,不要改动程序行的顺序,不要乱加空行,更不要增加或删除语句。错误主要是分语法错误和逻辑错误两种。

应试策略:

⑴ 首先审题,了解试题的要求,在明确题意的基础上略读一遍程序,找出明显的错误,如拼写错误等。提前记录好试题给出的输入和输出例示,以便检验改错后程序运行的结果是否正确。

⑵ 对需要改错的程序进行语法错误检查,若编译提示有语法错时,可参考编译提示来查找并改正错误。

⑶ 不出现语法错时,执行程序,按照试题示例给出的数据进行运行测试,若运行的结果与输出结果相同时,该题就做对了;若运行的结果与给出的输出结果不同,就应进一步检查程序中的逻辑错误。该类错误比较难查,因为它并不影响程序运行,但结果不对。

⑷ 存在逻辑错误时,首先应当理解题意、读懂程序的算法,必要时可按步检查数据的流程,以便确定错误所在。例如,题目要求数据按由小到大排序,而结果数据是按由大到小进行了排序,问题可能出现在条件判断上。如做循环的时候数组上限下限错了,需注意基数是从0开始而不是1开始的[4]。因此修改程序中的逻辑错时,考生需读懂程序代码。

⑸ 修改完成,得到正确结果后,一定不要忘记把修改后的程序保存。

2.2.3 程序设计题

要点分析:这部分题的难点在函数的编写上,一般题目都要求编写一个函数以实现某功能,函数名称和参数会给定。题目类型包括数列计算、数字处理、字符串操作、数组操作、结构体操作等。文章对近年来100套真题进行分析研究发现,程序设计题目主要集中在字符串处理数字处理及数组操作上,图1显示了各类题目的数量分布。涉及到的考点内容如下:

字符串处理:主要包括字符串中满足条件的字符的删除、字符位置移动、字符排序、字符串连接等。

数字处理:主要是对数字的重组生成一个新数字、数字的整除、满足条件的素数、求数字的因子等。

数组操作:寻找数组中最大、最小值、数组中满足条件的元素求和(如:对角线元素、周边元素求和)、数组的转置、对数组上三角或下三角处理等。

数列:主要是数列求和、阶乘处理等。

链表及结构体:主要是求结构体数组中最大值、最小值、平均分,链表逆置等、

其他:迭代法求方程值、特殊数字处理等。

应试策略:

⑴ 认真审题,了解试题的要求,记下试题给出的输入和输出例示,以核实在编写完成后,对照运行的结果是否正确。

⑵ 启动源程序,对照函数首部的形参,审视主函数中调用函数时的实参,以便明确在函数中需要处理的数据对象。

⑶ 研究题目的要求,仔细看主函数调用函数的方式,如果在表达式中调用函数(如把函数值赋给某变量),则要求有函数值返回,需要注意函数类型,通过return语句返回函值;如果主函数中仅以语句形式调用函数,则结果需要通过形式参数间接返回。

⑷ 选择合适的算法,输入程序语句,不要忘记及时保存。

⑸ 编译程序,直到没有语法错误。

⑹ 调试程序,利用试题中给出的例示数据进行输入(若要求输入的话),运行程序,用例示的输出数据检验输出结果,直到结果相同[5]。

根据上面的要点分析,每种题型练习几种,举一反三,很快就能掌握,考试的时候就会应对自如。这里有一个例子,数字处理问题:

写一个函数fun,其功能是:将变量a和b两个两位正整数拆分出个位数字和十位数字,重新组合成一个新的整数放在c中。合并的方式是:将a中的十位数和个位数依次放在变量c的百位和个位上,b中的十位数和个位数依次放在变量c的十位和千位上。

例如,当a=45,b=12,调用该函数后c=2415。

a=45和b=12两个数在100套题中出现了八次,通过完成不同的组合,生成不同的四位数。如:生成5241,2415,1524,5142,2514,4152,4215,1425等。这类题目理解后非常简单,将a和b分解出个位数和十位数,根据要求重新组合成新的四位数。b和10求余(b%10)得到b的个位,b除以10(b/10)得到b的十位,a除以10(a/10)得到a的十位,a和10求余(a%10)得到a的个位,新的4位数c是:a%10+(b/10)*10+(a/10)*100+(b%10)*1000。如果熟练的话,程序里面写一句话即可。

#include <stdio.h>

void fun(int a, int b, long *c)

{

*c= a%10+(b/10)*10+(a/10)*100+(b%10)*1000;

}

对其他类型题目也是如此,练习几个典型题目,抓住实质,到时便可以得心应手。

3 结论

随着计算机等级考试的不断发展和变化,在教学中教师要不断研究知识点并总结新的教学方法,深入研究教学知识点和考试内容的联系与区别,在提高教学水平的同时提高二级C等级考试的通过率[6]。文章紧密结合二级c新大纲,分析考试要点,结合题型,给出应试策略,在实际的教学应用中取得了良好的效果。下一步紧跟全国计算机等级考试试题的变化,及时调整授课方式及应对策略,确保通过率逐步上升。

参考文献(References):

[1] 贺安坤,姜贵平,张伟.基于NCRE计算机基础课程教学改革[J].福建电脑,2017(8):156

[2] 二级C应试技巧[EB/OL].https://www.docin.com/p-249801783.html

[3] 王竹琴.二级C上机考试填空题应试策略[J].運城学院学报,2005(4):27-28

[4] 王景运.谈全国计算机等级C语言上机考试的应试经验[J].计算机时代,2006(4):55-56

[5] 苗冬霞.C语言二级考试攻略[J]武汉工程职业技术学院,2008(12):76-77

[6] 涂淑琴,万华,张春玲.全国计算机等级考试二级Access的要点研究与分析[J].计算机教育,2017(3):133-135