《2023年程序改错题集.docx》由会员分享,可在线阅读,更多相关《2023年程序改错题集.docx(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2023年程序改错题集 在考生文件夹下的给定程序modi33.c中,函数fun的功能是:计算输出high以内最大的10个素数之和。high由主函数传给fun函数。 若high的值为:100,则函数的值为:732。 请改正程序中的错误,使它能得出正确结果。 注意:不要改动main函数,不得增行或删行,也不得更改程序的结构! #include #include #include #include int fun(int high) int sum=0,n=0,j,yes; /*found*/ while (high=2)&(n for (j=2;j if (high%j=0)yes=0;break
2、 if (yes) sum+=high;n+; high-; return sum; main() system(cls); printf(%dn,fun(100); 第1 处内容填写有误 第1处操作错误 题面要求操作:内容为while (high=2)&(n=2)&(n 第2处操作错误 题面要求操作:内容为if (high%j=0)yes=0;break; 实际操作结果:内容为if(high%j=0)yes=0;break 本题的考核点是C语言中一些规定的应用。 本题中的第一处错误是:在C语言中,和应成对出现,所以程序中的语句 while (high=2)&(n=2)&(n 本题中的第二处错
3、误是:C语言中,;是语句的一部分,是语句结束的标志,不可缺少,所以, if (high%j=0)yes=0;break应改为if (high%j=0)yes=0;break;或相同作用的语句。 本评析仅作参考。 学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:按分数的高低排列学生的记录,高分在前。 注意:部分源程序存在考生文件夹下的文件prog91.c中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 #include #define N 16 typedef struct char num
4、10; int s; STREC; int fun(STREC a) main() STREC sN=GA05,85,GA03,76,GA02,69,GA04,85,GA01,91,GA07,72,GA08,64,GA06,87,GA015,85,GA013,91,GA012,64,GA014,91,GA011,91,GA017,64,GA018,64,GA016,72; int i,n;FILE *out; fun(s); printf(The data after sorted:n); for(i=0;i if(i)%4=0)printf(n); printf(%s %4d,si.num,
5、si.s); printf(n); out=fopen(out16.dat,w); for (i=0;i if(i)%4=0 & i) fprintf(out,n); fprintf(out,%s %4d,si.num,si.s); fprintf(out,n); fclose(out); 生成的结果文件的内容有误 文件out16.dat未创建 本题的考核点是按分数的高低排列学生记录的算法。 解题思路:通过选择法或其它的方法对学生记录按分数从高到低进行排序。 本评析仅供参考。 int fun(STREC a) int i,j,p,t,k; char h; for (i=0;i 程序改错题集 程序改错题 程序改错题 公文改错题集 程序改错题(全文) 5 程序改错题 改错题 改错题 改错题 改错题