网站大量收购独家精品文档,联系QQ:2885784924

12套C语言上机试题及参考答案.doc

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12套C语言上机试题及参考答案

第一套C语言上机试卷 一、改错题 【题目】 本程序计算并输出二维数组a的每一列最小元素的值及其行号、列号,整个数组a中最小元素的值及其行号、列号。含有错误的源程序为: #includestdio.h #define n 4 #define m 3 int a[n][m],s[m]; p(int j) {int k,i,x; S[j]=x=a[0][j];i=0; for(k=1;kn;k++) if(a[k][j]x) {i=k;s[j]=x=a[k][j];} return i; } main() {int index[m],i,j,k; for(i=0;in;i++) for(j=0;jm;j++) scanf(%d,a[i][j]); for(j=0;jm;j++) {index[j]=p[j]; printf(a[%d][%d]=%d\n,index[j],j,s[j]); } i=s[0];k=0; for(j=1;jm;j++) if(s[j]i) {i=s[j];k=j;} printf(min=a[%d][%d]=%d,index[k],k,i); } 注:调试程序时,可以随意输入测试数据,最后运行本程序时,必须从键盘输入下列数据: 6 4 16 9 7 13 8 18 15 5 12 19 【要求】: 1.将上述程序录入到文件 myf1.c中,然后根据题目的要求以及程序中语句之间的逻辑关系对程序中的错误进行修改。 2.改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预处理语句,但不能增加其他语句,也不能删去整条语句。 3.将改正后的源程序(文件名myf1.c)放在考试盘的根目录下,供阅卷用。 二、编程题 【题目】建立数组a[3][8],其中前两行元素产生方法是: 用初值x1=26及公式xi+1=(25*xi+357)%1024,产生一个数列:x1,x2,…,x16。其中x1~x8作为a的第一行元素;x9~x16作为a的第二行元素;第三行的元素值取前两行同列元素的最大公约数。最后把数组a的元素写到文件myf2.out中,每写完a的一行元素要换行。 【要求】 1.将源程序取名为myf2.c 输出结果文件取名为myf2.out。 2.数据文件的打开、使用、关闭均按TURBO C文件操作实现。 3.源程序文件和运行结果文件均需放在考试盘的根目录下,供阅卷用。 4.不要将myf2.obj和myf2.exe保存到考试盘上。 第二套C语言上机试卷 一、改错题 【题目】 下面的程序判断一个正整数是否为降序数,再打印组成该整数的每个字符。 设正整数m=d0d1d2d3…d k-1,若满足d i =d i+1,i=0,1,…,k-2,则m就是一个降序数,如21、433是两个降序数。 含有错误的源程序如下: #includestdio.h void main() {int num,k,di,n,isdec; long m; char digit[10]; scanf(num=%d,num); for(;num0;num--) {n=0;isdec=1;k=0; scanf(%ld,m); while(m!=0) {di=m%10; digit[n++]=m%10+’0’; *数字字符与相应数字的转换* m=m/10; if(k=di)k=di; else isdec=0; } for(n--;n=0;n--) {putchar(digit[n]); putchar( );}*使用putchar要加#includeatdio.h* if(isdec)printf( is decrea order number\n); else printf(is not decrea order number\n); } } 【要求】 1.将上述程序录入到文件myf1.c中,然后根据题目的要求以及程序中语句之间的逻辑关系对程序中的错误进行修改。 2.改错时,可以修改语句中的一部分内容,调整语句的次序,增加少量的变量说明或编译预处理命令,但不能增加其他语句,也不能删去整条语句。 3.改正后的源程序myf1.c保存在考试盘的根目录下,供阅卷用,否则不予评分。 二、编程题 【题目】 程序功能:将一字符串做压缩处理。 编程要求: 1.编写一个函数int compress (char s[ ]),将s中连续出现的多个相同字符压缩成一个字符,统计被删除的字符个数,并返回被删除的字符个数。 2.编写主函数main。从键盘上读入一行字符数据放入一个字符型数组中,调用compre

文档评论(0)

yan666888 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档