算机评分和人工阅卷相结合的。
1、程序填空题
填空题是新考试系统二级上机考试出现的新题型,要求在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。根据填空题的特点,需要注意以下事项:
1)试题中用/******found******/来提示一个填空,并用___1___、___2___等来标识每个需填的空,考生应使用正确的答案来代替上面的填空
编号。记住一定要将横线和编号删除掉。
2)只能在填空的地方改动程序,不要改动程序结构,也不要增加或删除行,哪怕是空行也不行。
3)程序是否运行与得分无关,即使没有任何错误,能正确运行,也不一定能得分,这与改错题是一样的,详细分析参考下面的改错题。
4)题目做完后必须保存。
2、程序修改题(也叫改错题)
1)错误的性质基本分语法错和逻辑错两种。
2)试题中用/******found******/来提示在下一行(或下面第二行)有错。
3)只能在出错行上进行修改,不要改动程序行结构,也不要增加或删除行,哪怕是空行也不行。
4)不得删除/******found******/,评分程序将根据这个标志,从考生的modi1.c文件中抽取它的下一行信息,和标准答案进行比较。通常,标准答案会有多种,只要考生的答案和其中一个对应上了即可得到相应的分数。由于标准答案不可能涵盖所有可能正确的答案,所以要求考生在做改错题时,务必做到答案的“朴实无华”和“平易近人”。比如说在累加到100的for循环控制语句中,判断是否达到上限,例如x<100应改为x<=100,最好不要使用x-100<=0这个答案,因为标准答案中没有这种答案!由上述可以得到这样的一个奇怪的结论:A、即使你的改错程序能够正确执行,也未必可以得分。B、改错程序修改完毕后,无所谓运行与否,这与得分无关。很多考生把自己改过的改错程序运行后,没有任何错误,但却没有得到理想的分数,造成上机不过,心里想不通,其实是对上述的问题没有了解罢了。
建议做改错题的步骤:
1)先按F9检查程序是否有语法错误。当编译提示有语法错时,可参考编译提示查找并改正错误。
2)当不再出现语法错时,使用CTRL+F9执行,按照试题的示例给出的数据进行试算,若试算的结果与给出的输出结果相同时,该题就做对了;若试算的结果与给出的输出结果不同,就应进一步检查程序中的逻辑错误。
3)当程序存在逻辑错误时,首先应当理解题意、读懂程序的算法,必要时可按步检查数据的流程,以便确定错误所在。例如,题目要求数据按由小到大排序,而结果数据是按由大到小进行了排序,
问题可能出现在条件判断上。又如,输出的字符串比预期的短,就有可能字符串的结束标志放错了位置。再如做循环的时候,数组上限下限错误了,基数是从0开始,而不是1开始的。修改程序中的逻辑错时,要求考生认真读懂程序代码。
4)修改完成,得到正确结果后,一定不要忘记把修改后的程序保存。
3、程序设计题(也叫编程题)
上机编程题目都必将生成一个out.dat文件,所以,评分程序是按照最终
生成的文件给分的:
1)只要考生能生成最终答案文件,均可得分。
2)很多最终答案文件只有少数若干行数据,分数由正确答案的行数决定。比如有一道题,要求用迭代方法计算cos(x)-x=0的一个近似根,其答案是0.739085,最终要求生成的文件OUT.DAT中只有一行数据。有这个文件,并且该文件只有一行数据0.739085的话,就可以得到100分,无所谓你是否编写程序了!
因此,编程题必须运行,并且要保证运行结构是正确的。有的是直接由程序写例子,有的是要求考生手工输入,这样的程序一般都会有这样一句话:例如,输入XXXXX,则输出XXXXX。如果你输入这个数据,得到和题目要求一样的结果,那么恭喜你了,这道题你就做对了。
在编程题中,都会有一个或两个与文件操作有关的函数NONO(),这是用于评分使用的,不要改动。编程题做完后一定要正确运行,否则肯定是0分。
必须认真完成上机考试题库的练习。在上机考试时,将会在题库中随机各抽取一道题目。填空题和改错题需要参考本中心提供的标准答案,如果答案和标准答案不同,将会不能得分。编程题没有标准答案,本中心提供的答案可以提供参考。