湖南工业大学c语言网上作业答案,湖南工业大学c语言题库

C语言考试模拟题 1一、 程序修改题(30分) 在考生文件夹下,给定程序MODI.C的功能是: 输入一个百分制成绩,打印出五级记分成绩。考试成绩在90分或90分以 上为优秀,80~89分为良好,70~79为中等,60~69为及格,低于60分 为不及格。 请修改并运行该程序,然后将源程序文件MODI.C提交。 程序中有两处错误,错误都在提示行: /***********found***********/的下面一行,请考生注意。 请改正程序中的错误,使它能得出正确的结果。 注意:程序中的其它地方请考生不要随意改动,不得增行 或删行,也不得更改程序的结构! #include #include #include #include void main() { int score,t; printf(“Please enter a score:“); do scanf(“%d“, while(score100); t=score/10; /*************found**************/ switch(score) ----switch(t) { case 10: case 9:printf(“优秀!\n“);break; case 8:printf(“良好!\n“);break; case 7:printf(“中等!\n“);break; case 6:printf(“及格!\n“);break; /*************found**************/ else :printf(“不及格!\n“);: } } switch(score) ----switch(t) else :printf(“不及格!\n“)----defalut: printf(“不及格!\n“) 二、 程序填空题(30分) 在考生文件夹下,给定程序FILL.C的功能是: 打印出1至1000中满足其个位数字的立方等于其本身的所有整数。本题 的结果为:1 64 125 216 729。 请填空,并运行该程序,然后将源程序文件FILL.C提交。 程序有两个空(1)、(2)需要补充完整。并将程序调试出 所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include main() { int i,g; for(i=1;i #include int fun(char str1[],char ch) { /***********begin***********/ /************end************/ } void main() { void NONO( );//函数声明 char str1[80],ch; int count; printf(“Enter str1:\n“); gets(str1); printf(“Enter ch:\n“); ch=getchar(); count=fun(str1,ch); printf(“Result is: %d\n“,count); NONO( ); } void NONO( ) {FILE *fr,*fw; int i, count; char str[80], ch; fr=fopen(“D:\\exam\\11400207\\PROGIN.DAT“,“r“); fw=fopen(“D:\\exam\\11400207\\PROGOUT.DAT“,“w“); for(i=1; i= 'A' int s=0; /************found************/ for ( i=1; i for ( i=0; iif (arr[i] % 2 == 1) 二、 程序填空题(30分) 在考生文件夹下,给定程序FILL.C的功能是: 求一维数组a中素数之和。 例如:如果数组a的元素为:2,3,5,7,8,9,10,11,12,13,15,17, 则程序的输出应为:Sum is: 58。 请填空,并运行该程序,然后将源程序文件FILL.C提交。 程序有两个空(1)、(2)需要补充完整。并将程序调试出 所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include #include #include void main() { int a[12]={2,3,5,7,8,9,10,11,12,13,15,17},i,j,k,s; /************found************/ ___(1)int s=0__; for ( i=0; ik ) /************found************/ s=s+__(2)_ a[i]_; } printf(“Sum is: %d\n“,s); } 三、 程序设计题(40分) 在考生文件夹下,要求程序PROG.C的功能是:求3*3矩阵的最小值并输 出。 例如,当矩阵为: -1 2 3 4 9 5 7 8 6 则最小值为:-1 部分源程序存在文件PROG.C中。 请在fun( )函数中的/*******begin********/ 与 /********end*********/ 之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改 动其它位置的任何内容。 注意:main()函数中的最后一行以及main()函数后面的内容,考生不必 阅读,但千万不要对这些内容作任何改动。 运行并调试程序,然后将源程序文件PROG.C提交。 #include #define N 3 int fun(int a[N][N]) { int min; /***********begin***********/ /************end************/ return min; } void main() { void NONO( );//函数声明 int a[N][N]={-1,2,3,4,9,5,7,8,6}; int i,j,min; printf(“array is:\n“); for(i=0;i #include void main() { int a[3][3]={4,4,34,37,3,12,5,6,5},i,j,max,min; max = min = a[0][0]; for ( i=0; i for ( j=0; j( min a[i][j]) min = a[i][j]; } printf(“The max is: %d\n“, max); printf(“The min is: %d\n“, min); } 二、 程序填空题(30分) 在考生文件夹下,给定程序FILL.C的功能是: 计算1到M(M为偶数)之间的奇数之和及偶数之和。程序运行结果为: sum of evens is 2550 sum of odds is 2500 请填空,并运行该程序,然后将源程序文件FILL.C提交。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更改程序的结构! #include #define M 100 void main() { int a,b,c,i; clrscr(); a=0;c=0; /**************found************/ for(i=1;___(1)i #include double average( int arr[ ], int n ) { int k=0,i; double s; s = 0; for ( i=0 ;is=average(a,12) printf(“The result is: %.2f\n“, s); } 二、 程序填空题(30分) 在考生文件夹下,给定程序FILL.C的功能是: 求两个正整数x,y的最大公约数和最小公倍数。 例如:如果x=24,y=36,程序的输出应为: max is : 12 min is : 72 。 请填空,并运行该程序,然后将源程序文件FILL.C提交。 程序有两个空(1)、(2)需要补充完整。并将程序调试出 所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include #include #include void main() { int x,y,t,max,min,i,n1,n2; printf(“Please enter two numbers:“); scanf(“%d,%d“, if(x y) {t = x; x = y; y = t;} n1=x; n2=y; t = n2 % n1; /************found************/ while( ____(1)t=0或t____ ) { n2 = n1 ; n1 = t ; t = n2 % n1; } /************found************/ max = ____(2)n1____ ; min = x * y / max ; printf(“max is : %d\n“,max); printf(“min is : %d\n“,min); } 三、 程序设计题(40分) 在考生文件夹下,要求程序PROG.C的功能是: 按下面的公式求sum的近似值,n的值由键盘输入,输出保留4位小数。 1 1 1 1 sum = 1 - —— + —— - —— + …… +(-1)^(n-1) ——— 3 5 7 2n-1 例如:当n=3时,结果为0.8667;当n=10时,结果为:0.7605部分源程序 存在文件PROG.C中。 请在fun( )函数中的/*******begin********/ 与 /********end*********/ 之间填入你编写的若干语句,存盘并运行,直到得出正确结果。请勿改 动其它位置的任何内容。 注意:main()函数中的最后一行以及main()函数后面的内容,考生不必 阅读,但千万不要对这些内容作任何改动。 运行并调试程序,然后将源程序文件PROG.C提交。 #include “stdio.h“ double fun( int n ) { double c; /***********begin***********/ /***********end***********/ } void main() { void NONO( );//函数声明 double sum; int n; printf(“Enter n:\n“); scanf(“%d“, sum=fun(n); printf(“sum=%.4f\n“,sum); NONO( ); } void NONO( ) { FILE *fr,*fw; int i, x; fr=fopen(“D:\\exam\\11400202\\PROGIN.DAT“,“r“); fw=fopen(“D:\\exam\\11400202\\PROGOUT.DAT“,“w“); for(i=1;i=5;i++) { fscanf(fr,“%d“, fprintf(fw,“s=%.4f\n“,fun(x));} fclose(fr); fclose(fw); } Answer: int i; double sum=0.0; for(i=1;i=n;i++) c=1.0/(double)(2*i-1); if(i%2!=0) sum+=c; else sum-=c; } return sum; 注: 1,此套题库是个人从二十套考试模拟题挑选出来 的比较好的题目。 3,鉴于个人的能力有限,以及多 方面收集资料的误差等原因。 解答可能会有纰漏以及些许错 误,望电科班的童鞋们斧正.谢谢!

展开阅读全文

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值