1、二级C语言 机考 操作指南 022010年3月考试专用上机考试指导1 上机考试介绍全国计算机等级考试二级 C 语言的上机考试时间为90 分钟,考试时间从考生点击“开始考试并倒计时”按钮考试,由考试系统自动倒计时。倒计时结束前5 分钟,考试系统会自动报警题型考生考试即将结束并注意存盘。当倒计时结束,考试系统将自动锁定计算机,考生将不能再进行任何操作。当考生点击“交卷”按钮后,考试系统也会自动锁定计算机。注意:无论由于什么原因,考试系统在锁定计算机后,考生都要举手报告监考老师,由监考老师输入密码后,方可离开考场。上机考试的满分为 100 分,由一道填空题(30 分)、一道改错题(30 分)以及一道
2、编程题(40 分)组成。90 分(含 90 分)以上为“优秀”,80 分(含 80 分)以上为良好,60 分(含 60 分)以上为及格。上机考试的题目由计算机随机从题库中抽取,因此每个考生的题目与其附近考生的题目都不一样。考试系统只能够正常登录一次,在考生第一次正常登录后,无论是由于什么原因导致考试系统退出,考生都不能再次登录,除非由监考老师输入二次登录密码。因此,在考试过程中,如果出现计算机死机、显示器断电、鼠标键盘失灵等意外情况,考生切勿自行处理,而应立即举手报告监考老师,由监考老师进行处理。注意:考生只能抽取一次试题,不要试图通过重新登录考试系统、重启计算机等非常手段来重新抽取试题。2
3、解题要求各题型的解题要求如下:(1)填空题:填空题的源程序文件名为“blank1.c”,要求根据题意在程序中挖出的空中填上正确答案即可,不要求运行。但一定要注意保存,否则不得分。(2)改错题:改错题的源程序文件名为“modi1.c”,要求根据题意在指定的若干行程序中找出错误并改正,不要求运行。但一定要注意保存,否则不得分。(3)编程题:编程题的源程序文件名为“prog1.c”,要求将程序中 fun()函数的函数体补充完成,实现题目中所要求的功能。需要注意的是,编程题一定要运行,必须要有运行结果。因为编程题的评分不是根据考生填写的程序,而是根据程序的运行结果给分。3 上机考试流程及各题型解题方法
4、下面以完全仿真的上机考试模拟演示系统为平台,演示上机考试的流程及填空题、改错题和编程题的解题方法。上机考试的整个过程可以分为:登录、答题和交卷三个阶段。请读者一定要注意每个细节,并反复进行练习,不要出现错漏。3.1 登录(1)双击桌面上的上机考试系统的图标后,弹出图1 所示的界面。上机考试指导图1 登录界面(2)单击“开始登录”按钮后,转入考试登录界面。如图 2 所示。图2 准考证号输入与验证界面(3)在“准考证号”一栏输入考生的准考证号码,然后单击“考号验证”按钮(或按Enter 键)。如果准考证号码输入正确,考试系统随即会弹出一个提示框,显示考生的准考证号码、姓名和身份证号码三种信息,如图
5、 3 所示;如过准考证号码输入错误,考试系统也会弹出一个提示框,显示错误信息(如图4 所示),提醒考生重新输入准考证号码。2010年3月考试专用图3 考生信息核对提示框图4 错误信息提示框(4)在核对“准考证号码”、“姓名”和“身份证号码”三种无误后,单击提示框上的“是(Y)”按钮,考试系统开始随机抽取试题。抽取试题结束后,弹出“考试须知”界面(如图 5 所示),考生须注意阅读。尤其要注意:图5 “考试须知”界面注意:到目前为止的所有操作所花的时间都不会计入考试时间,因此考生可以从容操作,仔细阅读“考试须知”,切勿出错。(5)在单击“开始答案并倒计时”按钮后,随即弹出考试界面(如图 6 所示)
6、,考试正式开始并倒计时。图6 考试界面3.2 答题(1)考试界面分成“状态信息条”(图7)和“试题内容查阅窗口”(图 8)两个部分。“状态信息条”用于显示考生的准考证号码、考试科目、考试剩余时间等信息。单击“隐藏窗口”按钮可以将“试题内容查阅窗口”最小化,再单击一次则会恢复。注意,在确认已经完成所有试题之前,切勿点击“交卷”按钮。上机考试指导图7 状态信息条图8 试题内容查阅窗口(2)“试题内容查询窗口”用于显示填空题、改错题和编程题的题目内容。单击“程序填空题”按钮,则下方的“内容显示窗口”就会显示填空题的题目;单击“程序改错题”按钮,则下方的“内容显示窗口”就会显示填空题的题目;单击“程序
7、设计题”按钮,则下方的“内容显示窗口”就会显示编程题的题目。当“试题内容查询窗口”中显示上下或左右滚动条时,表示该窗口中的试题尚未完全显示,此时考生可用鼠标操作显示余下的试题内容,防止因漏做试题二影响考试成绩。“考生文件夹”下面的路径即属于该考生的文件夹,考生可以根据该路径从“我的电脑”中找到自己的考生文件夹(如图 9 所示)。该文件中有 4 个文件,分别是“blank1.c”(填空题的程序)、modi1.c”(改错题的程序)、prog1.c”(编程题的程序)和“in.dat”。需要说明的是,有些计算机不会显示文件的后缀名。图9 考生文件夹注意:考生一定要在属于自己的考生文件夹下的程序中作答,
8、否则将不会得分。为了不找错文件夹,考生也可以使用“试题内容查询窗口”中的“答题”菜单栏。单击2010年3月考试专用“答题”菜单栏,会弹出一个下拉菜单(如图 10)所示。单击“Blank1.c”,考试系统就会自动调用 VC 打开考生文件下的程序“blank1.c”;单击“Modi1.c”,考试系统就会自动调用VC 打开考生文件下的程序“modi1.c”;单击“Prog1.c”,考试系统就会自动调用 VC 打开考生文件下的程序“prog1.c”。使用这种方法,就不会找错考生文件夹。图10 “答题”下拉菜单注意:有的考试系统中,单击“答题”菜单栏弹出的下拉菜单显示的是“填空题”、“改错题”和“编程题
9、”,这不会有影响。(3)做程序填空题时,首先单击“程序填空题”按钮,阅读题目,理解题意。程序填空题的题目如图 11 所示。图11 程序填空题题目然后使用 VC 打开考生文件下的程序“blank1.c”,该题的程序如下所示:#include #include #define N 8 typedef struct list int data struct list *next SLIST SLIST *creatlist(int *) void outlist(SLIST *) int fun( SLIST *h) SLIST *p上机考试指导int s=0 p=hnext while(p) /*
10、found*/ s+=_1_ /*found*/ p=_2_ return s main() SLIST *head int aN=12,87,45,32,91,16,20,48 head=creatlist(a) outlist(head) /*found*/ printf(nsum=%dn, fun(_3_) SLIST *creatlist(int a) SLIST *h,*p,*q int i h=p=(SLIST *)malloc(sizeof(SLIST) for(i=0 idata=ai pnext=q p=q pnext=0 return h void outlist(SLIS
11、T *h) SLIST *p p=hnext if (p=NULL) printf(The list is NULL!n) else printf(nHead ) do printf(%d, pdata) p=pnext while(p!=NULL) printf(Endn) 在每一个注释行“/*found*/”的下方,都有一个形如“_x_”(x 代表数字 1、2或 3)的空。考生要做的就是将“_x_”删去,然后填上正确的答案,如下所示:2010年3月考试专用int fun( SLIST *h) SLIST *p int s=0 p=hnext while(p) /*found*/ s+= p
12、data /*found*/ p= pnext return s main() SLIST *head int aN=12,87,45,32,91,16,20,48 head=creatlist(a) outlist(head) /*found*/ printf(nsum=%dn, fun(head) 注意:程序填空题不要求运行,但一定要保存。出于保险考虑,考生可以运行程序查看结果。程序填空题是否被运行,不影响考生的得分。(4)做程序改错时,首先单击“程序修改题”按钮,阅读题目,理解题意。程序修改题的题目如图 12 所示。图12 程序修改题题目然后使用 VC 打开考生文件下的程序“modi1.
13、c”,该题的程序如下所示:#include 上机考试指导double fun( int m ) double t = 1.0 int i for( i = 2 i = m i+ ) /*found*/ t += 1.0/k /*found*/ _ main() int m printf( nPlease enter 1 integer number: ) scanf( %d, &m ) printf( nThe result is %lfn, fun( m ) ) 在每一个注释行“/*found*/”的下方,都有一行或几行程序,其中有一个(类)错误,考生须找出这个错误并改正,例如第一个注释行“
14、/*found*/”的 下 方 只 有 一 行 程 序 “t += 1.0/k”, 应 将 其 改 为 “t += 1.0/i”。 有 的 注 释 行“/*found*/”下方会出现这样的行“_”,这实际上就是一个填空题,考生要做的就是把“_”删去,然后填上正确答案。例如第二个注释行“/*found*/”的下方就有一个“_”,将其删去,然后填上“return t”,改正后的程序如下所示:#include double fun( int m ) double t = 1.0 int i for( i = 2 i b)2010年3月考试专用 t = a a = b b = a 上面的程序中,/*f
15、ound*/”下面的几行程序中有三个地方少了分号()但都属于同一类错误。任何一个“/*found*/”下方的程序中都不会出现多类错误。注意:程序修改题同样不要求运行,但一定要保存。出于保险考虑,考生可以运行程序查看结果。程序修改题是否被运行,不影响考生的得分。(5)做编程题时,首先单击“程序设计题”按钮,阅读题目,理解题意。程序设计题的题目如图 13 所示。图13 程序设计题题目然后使用 VC 打开考生文件下的程序“prog1.c”,该题的程序如下所示:#include #include void NONO() double fun( int m ) main() printf(%fn, fu
16、n(20) NONO() void NONO ( ) /* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/ FILE *fp, *wf int i, n double s 上机考试指导fp = fopen(C:WEXAM24010001in.dat,r) wf = fopen(C:WEXAM24010001out.dat,w) for(i = 0 i 10 i+) fscanf(fp, %d, &n) s = fun(n) fprintf(wf, %fn, s) fclose(fp) fclose(wf) 编程题要求将 fun()函数的函数体填充完整,以实现题目的要求。程序可
17、以编写如下:#include #include void NONO() double fun(int m) int i double s = 0.0 for(i=1 i = m i+) s = s + log(i) s = sqrt(s) return s 但是,仅仅把 fun()函数的函数体填充完整是不够的,即使你所填写的程序时正确的。因为编程题并不是根据考生所填写的程序来评分的,而是根据程序的运行结果是否正确来评分的。因为在编写好程序后,还必须运行程序。经编译运行后,弹出如图14 所示的界面。图14 程序运行界面有不少考生做到了这一步,但结果却一分都没有得到。原因在于此时尽管程序已经开始运
18、行,但并没有运行结束。图 14所示的界面中,程序正在等待输入考生输入数据(m的值)。因此应该从键盘上敲入一个正整数(例如 20),然后按回车键。程序随即继续运行,输出运算结果,如图 15 所示。图15 程序运行结果程序输出的结果是:6.506583。从题目中的例子可以得知,当 m的值为 20 时,运算结2010年3月考试专用果确实是 6.506583,因此可以肯定程序时正确的。到这里为止,这个程序才算是运行结束了。我们注意到,运行界面的最后一行是“Press any key to continue”。这行信息并不是由程序输出,而是 VC 在一个程序运行结束后,自动添加的提示信息。因此,只有当运
19、行界面的最末行出现了“Press any key to continue”,一个程序才算是运行结束。否则可能是由于程序等待数据输入或陷入了死循环。注意:编程题在做好后,一定要运行并且要运行结束才可能得分。如果程序不运行,不没有运行结束,那么一分也得不到。3.3 交卷至此,全部试题都解答完毕。考试过程中,考试系统会为考生自动进行倒计时。当考试时间只剩下 5 分钟时,会弹出提示框,如图 16 所示。考生单击“确认”按钮后可以继续作答。图16 倒计时提示框当考生时间结束,考试系统会自动锁定计算机,考生不能再进行任何操作。考生也可以通过单击“状态信息条”上的“交卷”按钮,提前交卷。单击“交卷”按钮后,考试系统会弹出提示框,如图 17所示。图17 交卷提示框考生单击“确认”按钮后,考试系统会自动锁定计算机,如图 18所示。图18 考试系统锁定计算机的界面注意:考试系统锁定计算机后,考生还不能离开考场,切记要请监考老师来输入结束密码,并得到监考老师的允许后方可离开考场。请务必遵守!
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1