




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机等级考试 上机指导 上机考试评分原理分析 上机考试是由计算机对考生的答题结果进行判断的 ,而不是人为阅卷,即计算机评分! 等级考试的上机考试是分批进行的,在相邻两批考 次之间,由监考人员做该批考次结束前的“收分”工作(实 际上是由计算机完成的)。也就是说,当你考完机试后, 你的上机成绩就已经出来了,只是我们不知道结果罢了 。当然,监考人员也不知道,因为最后分数是加密的! 评分程序在评改你的上机成绩,先从对应的考生文 件夹中读取考生的答题文件,再对这些文件按照评分程 序进行对比,然后给出相应的分数,最后,系统自动将 你的考生文件中的所有文件全部删除! 上机考试评分原理分析 对于题空题和改错题,评分程序先是读取考生文件夹下的 BLAN.C和MODI.C文件,再找到其中需要填空和改错的代码所在 的行数,最后与评分程序中的提供的数据进行对比。 需要提醒考 生注意的是,填空题和改错题的要求中明确声明:不得删减或增 加程序行,就是这个道理; 对于编程题,评分程序先是读取考生文件夹下的扩展名为 .DAT的文件,再其中的数据与评分程序中的提供的数据进行对比 ,因此,考生在编程后,一定要运行程序,以生成扩展名为.DAT 的输出文件! 上机考试评分原理分析 评分程序是按照最终生成的文件给分的! 由上述结论可以推出 如下事实: 1.只要考生能生成最终答案文件,均可得分! 2.很多最终答案文件只有少数若干行数据,分数由正确答案 的行数决定!例如,真考题库中有这样一道题,要求用迭代方法计 算cos(x)-x=0的一个近似根,其答案是0.739085,最终要求生成 的文件OUT.DAT中只有一行数据。有这个文件,并且该文件只有 一行数据0.739085的话,就可以得到100分!无所谓你是否编写了 程序!当然,有多行答案的文件的格式是由程序中的输出部分决定 的(而这个部分是不允许考生修改的!),考生必须能够看懂输出程 序段的输出格式,否则会适得其反! 上机考试两点重要注意事项 注意事项1: 大家做上机的填空、改错、编程题的时候请务必做到两件事情 : 一是编译运行确认无误! 二是切记一定要保存! 特别提醒: a、如果没有保存,无论是填空、改错还是编程题你都不能得 分,相当于没有做。 b、如果编程题没有运行即使保存了都有可能不得分,所以“编 译并运行”和“保存”两件事情请大家都务必办到。 c、万一有些同学不能完整的做完某一个题目无论是填空、改 错还是编程,也就是说你根本无法运行这个程序,也请你把你会做 的那部分填上去并保存,或许运气好会有步骤分,就当“死马当活 马医”嘛,因为上机考试的评分是以机器评分为主、人工评分为辅 结合进行的) 上机考试两点重要注意事项 注意事项2: 很多同学在做完了前一题(例如填空BLANK1.C或改 错MODI1.C等)没有关闭工作区就直接打开下面的题目做 (即使你点击blank1.c文件右上角的叉叉关闭了这个文件 也不行,必须关闭整个工作区),这样你运行的时候永远 不会正确,所以大家做完了前一题后务必关闭工作区再 做下一题(操作步骤为:打开主菜单:文件-关闭工作区 ,很简单的),当然,如果你万一不会关闭工作区,干脆 做完一题就把整个VC6.0关闭,然后重新启动VC6.0再打 开下一题做也行的。 1、填空题 请补充函数fun(),该函数的功能是:把从主函数中输入的字符串str2接在字符串str1 的后面。 例如:str1=“How do”,str2=“ you do?”,结果输出:How do you do? 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编 写的若干表达式或语句。 试题程序: #include #include #define N 40 void fun(char *str1,char *str2) int i=0; char *p1=str1; char *p2=str2; while(【1】) i+; for( ;【2】;i+) *(p1+i)=【3】; *(p1+i)=0; main() char str1N,str2N; clrscr(); printf(“*Input the string str1 printf(“ nstr1:“); gets(str1); printf(“ nstr2:“); gets(str2); printf(“*The string str1 puts(str1); puts(str2); fun(str1,str2); printf(“*The new string *n“); puts(str1); 答案及评析: 【1】*(p1+i) 【2】*p2 【3】*p2+ 【解析】填空1:变量i用来记 录字符串str1的长度,当指针指到 字符串str1结束标志符0时,while 循环结束,变量i停止累加。 填空2:指针p2指向字符串str2,通 过for循环将字符串str2接在str1后面 ,循环结束的条件是指针p2所指的 字符是字符串结束标志符0。 填空3:指针p2最初指向字符串str2 的首字符,通过自加1,使指针p2 依次向后移动,指向str2的各个字 符,实现将字符串str2接在str1后面 的功能。 请补充函数fun(),该函数的功能是求一维数组xN的平均值,并对所得结果进行 四舍五入(保留两位小数)。例如:当 x10=15.6,19.9,16.7,15.2,18.3,12.1,15.5,11.0,10.0,16.0,结果为: avg=15.030000。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入 所编写的若干表达式或语句。 试题程序: #include #include double fun(double x10) int i; long t; double avg=0.0; double sum=0.0; for(i=0;i=A *t=s%10*s1+*t; s1=s1*10; main() long s, t; clrscr(); printf(“nPlease enter s: “); scanf(“%ld“, fun(s, printf(“The result is: %ldn “,t); 答案及评析: (1)错误:int fun(long s,long *t) 正确:void fun(long s,long *t) (2)错误:s=s%100; 正确:s=s/100; 【解析】错误1:函数由指针来完成参数的传递,所以没有返回值, 应定义函数的类型为void。 错误2:此处要注意特殊运算符号“%“-取余和“/“-整除的区别。将一 个数整除100则可得到由其百位数以上的数组成的新数字,将一个数整除 100取余则可得到由十位数和个位数组成的新数。 下列给定的程序中,函数fun()的功能是:计算并输出k以内最大的6个能被7 或11整除的自然数之和。K的值由主函数传入,若k的值为500,则函数的值为 2925。 请改正程序中的错误,使它能得到正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。 试题程序: #include #include int fun(int k) int m=0,mc=0, j; /*found*/ while(k=2) printf(“nnEnter p: “); scanf(“%d“, fun(a,p,n); printf(“nThe data after moving:n“); for(i=0;i printf(“%3d“,ai); printf(“nn“); 答案及评析: void fun(int *w, int p, int n) int i,j,t; for(i=p;i=0;j-) /*实现循环右移*/ wj+1=wj; w0=t; 【解析】本题采用“循环右移“的算法。和我们在前面分 析的稍有不同的是,一个是整型数组,一个是字符型数组 。 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放 入结构体数组s中,请编写函数fun(),它的功能是:把分数最低的 学生数据放在h所指的数组中。注意:分数低的学生可能不只一个 ,函数返回分数最低学生的人数。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun 的花括号中填入所编写的若干语句。 试题程序: #include #define N 16 typedef struct char num10; int s ; STREC; int fun (STREC *a, STREC *b) main () STREC sN=“GA005“,82,“GA003“,75,“GA002“,85,“GA004“,78, “GA001“,95,“GA007“,62,“GA008“,60,“GA006“,85, “GA015“,83,“GA013“,94,“GA012“,78,“GA014“,97, “GA011“,60,“GA017“,65,“GA018“,60,“GA016“,74; STREC hN; int i, n; FILE *out; n=fun(s,h); printf(“The %d lowest score :n“,n); for (i=0; iai.s) min=ai.s; /*找出最小值*/ for(i=0;iaij) min=aij; /*求出二维数组的最小值*/ return min; 【解析】此类求最大值或最小值的C语言问题,我们可 以采用逐个比较的方式。要求数组中的所有元素走动一遍, 并从中找出最大、最小值,要注意一开始应使min存放数组 中的第一个元素的值。可按逐行查找也可按逐列查找的方式 ,本题采用的是逐行查找的方式。即行下标在外层循环,列 下标在内层循环,因为在循环的嵌套中越在内层循环,循环 变化就越快。 请编写一个函数fun(),它的功能是:将ss所指字符串中所有下标为偶数位 置的字母转换为小写(若该位置上不是字母,则不转换)。 例如,若输入ABC4efG,则应输出aBc4efg。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。 试题程序: #include #include #include void fun(char *ss) main() char tt81; clrscr(); printf(“nPlease enter an string within 80 characters:n“); gets(tt); printf(“nnAfter
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 夏季相关活动方案
- 城市美化活动方案
- 大别山根据地活动方案
- 大班玩滑梯安全活动方案
- 地铁公司植树节活动方案
- 大讨论比武竞赛活动方案
- 大同拓展活动方案
- 外景写真活动方案
- 地摊插花活动方案
- 大班静电活动方案
- 《中国酒类企业ESG披露指南》
- 2025至2030年中国玉米淀粉行业市场现状分析及前景战略研判报告
- 2025年江苏高考政治试卷真题解读及答案讲解课件
- 2025上半年山东高速集团有限公司社会招聘211人笔试参考题库附带答案详解析集合
- 辽宁省点石联考2024-2025学年高二下学期6月份联合考试化学试题(含答案)
- 2025高考全国一卷语文真题
- 荧光绿送货单样本excel模板
- 有机化学概述
- 复盛零件手册
- 内外墙抹灰施工承包合同
- 《急救药品》PPT课件.ppt
评论
0/150
提交评论