资源描述:
《C上机试卷第一套》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第一套一、程序填空(每空6分,共30分)利用,计算sinx的值,直到最后一项的绝对值小于时为止,输出e的值并统计累加的项数。请在下划线处填入正确的内容并将下划线删除,使程序得出正确结果。下面是源代码文件,注意:不得增行或删行,也不得更改程序的结构!#include#includemain(){intn=1,count=1;floatx;doublesum,term;printf("Inputx:");scanf("%f",①);sum=x;term=x;do{term=②;sum=sum+term;
2、n=n+2;③;}while(fabs(term)>=1e-5);printf("sin(x)=%f,count=%d",sum,count);}二、程序改错题:(第1、3处7分,第2处6分,共20分)爱因斯坦的阶梯问题。设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;只有每步跨7阶时,正好到阶梯顶。问共有多少阶梯。程序如下所示,其中存在一些语法和逻辑错误,请找出并改正之。注意:不得增行或删行,也不得更改程序的结构!#includeVoidmain()
3、{intx=1,find=0;/************found************/while(!find);{if(x%2==1&&x%3==2&&x%5==4&&x%6==5&&x%7==0)/************found************/{printf("x=%d",);find=1;/************found************/x++;}}}一、用函数编程计算并输出如图所示杨辉三角。(每个函数25分,共50分)注意:部分源程序代码如下,请勿改动主函数main和其它函数中的任何内容,仅
4、在PrintYH、CaculateYH函数花括号中填入你编写的若干语句。#include#defineN20voidCaculateYH(inta[][N],intn);voidPrintYH(inta[][N],intn);intmain(){inta[N][N]={0},n;printf("inputn(n<20):");scanf("%d",&n);CaculateYH(a,n);PrintYH(a,n);return0;}/*函数功能:计算杨辉三角形前n行元素的值*/voidCaculateYH(inta[
5、][N],intn){}/*函数功能:输出杨辉三角形前n行元素的值*/voidPrintYH(inta[][N],intn){}第一套参考答案一、程序填空(每空6分,共30分)利用,计算sinx的值,直到最后一项的绝对值小于时为止,输出e的值并统计累加的项数。请在下划线处填入正确的内容并将下划线删除,使程序得出正确结果。下面是源代码文件,注意:不得增行或删行,也不得更改程序的结构!#include#includemain(){intn=1,count=1;floatx;doublesum,term;
6、printf("Inputx:");scanf("%f",&x);①sum=x;term=x;do{term=-term*x*x/((n+1)*(n+2));②sum=sum+term;n=n+2;count++;③}while(fabs(term)>=1e-5);printf("sin(x)=%f,count=%d",sum,count);}二、程序改错题:(第1、3处7分,第2处6分,共20分)爱因斯坦的阶梯问题。设有一阶梯,每步跨2阶,最后余1阶;每步跨3阶,最后余2阶;每步跨5阶,最后余4阶;每步跨6阶,最后余5阶;只有
7、每步跨7阶时,正好到阶梯顶。问共有多少阶梯。程序如下所示,其中存在一些语法和逻辑错误,请找出并改正之。注意:不得增行或删行,也不得更改程序的结构!错误:#includeVoidmain(){intx=1,find=0;/************found************/while(!find);{if(x%2==1&&x%3==2&&x%5==4&&x%6==5&&x%7==0)/************found************/{printf("x=%d",);find=1;/******
8、******found************/x++;}}}正确:#includemain(){intx=1,find=0;while(!find){if(x%2==1&&x%3==2&&x%5==4&&x%6==