失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 合肥工业大学c语言是试卷 合肥工业大学-C语言程序设计试卷参考答案.doc-资

合肥工业大学c语言是试卷 合肥工业大学-C语言程序设计试卷参考答案.doc-资

时间:2021-10-26 00:24:28

相关推荐

合肥工业大学c语言是试卷 合肥工业大学-C语言程序设计试卷参考答案.doc-资

合肥工业大学-《C语言程序设计》试卷参考答案.doc

合肥工业大学C语言程序设计试卷参考答案一、 填空题(分,每空1分)1main( ) 或主函数 21 7 3040 54.5 6074 8一个字符 一串字符 9610c 0 11值传递 地址传递 1212345 11316 10 14fp = fopen (“file.txt” , ”w”);二、 选择题(10分,每题1分)1D 2B 3. 4B 5C6B 7C 8D 9A 10B三、 写出以下程序的运行结果(30分, 每题5分)15, 6, 5, 0 数值每个一分,格式一分。2c=1 数值每个两分,格式一分。d=0.0000003hello world! 大写字母变小写每个两分,其余不变1分。4b = -10i = 33, b=0i = 75, b=33 每个数据包括数据的格式各一分,。56, 45 最小值位置,最小值各一分;2, 98 最大值位置,最大值各一分;格式1分注释:最大值最小值颠倒扣2分。61 3 5 7 9数据各一分,格式错误扣一分。四、程序填空(10分, 每空1分)1. math.h j=s break2. &a,&b int *y int t; *y=t3. iNum=0 istrlen(str) 或 stri!=0 stri=a & stri=z五、编程题(30分)说明:每个语法错误扣0.5,语法错误最多扣两分为止。1. #includestdio.hmain() float x,y; /*变量定义1分*/scanf(“%f”, &x); /*输入1分*/if(x0) y=1;else if(x0)y=-1;else y=0; /*判断求值2分*/printf(“x=%f, y=%f”, x,y); /*输出1分*/ 2#includestdio.hmain() int i,j,a23,k1=0,k2=0,sum1=0,sum2=0; /*变量说明1分*/for (i=0;i2;i+)for(j=0;j3;j+)scanf(“%d”, &aij); /*循环输入2分*/for (i=0;i2;i+)for(j=0;j3;j+)if (aij0) sum1= sum1+ aij; k1+; else if (aij0) sum2= sum2+ aij; k2+;/*统计求和3分*/printf(“k1=%d, k2=%d”, k1,sum1,k2,sum2); /*输出1分*/#include stdio.h#include math.hfloat exps(float);void main( void)float x,y; /*变量说明0.5分*/scanf(“%f”,&x) /*输入0.5分*/y=(exps(x)+exps(-x)/2 /*函数调用表达式2分*/printf(“y=%f”,y); /*输出结果1分*/float exps(float x)/*函数结构定义1分*/float s=1,t=1;int i=1;while( fabs(t)1e-6)t=t*x/i;i+;s+=t;/*迭代循环2分*/return s; /*返回结果1分*/#include stdio.h#define NUM 45void main(void)int i,j,aNUM,sum=0; /*变量说明1分*/for(i=0;iNUM;i+)scanf(“%d”,&ai);/*循环输入1分*/for(i=0;iNUM;i+)if(ai60)sum+; /*循环统计2分*/for(i=0;iNUM-1;i+)for(j=i+1;jNUM;j+)if(aiaj)int t;t=ai;ai=aj;aj=t;/*排序算法5分,冒泡、选择都可*/for(i=0;iNUM;i+)printf(“%5d”,ai);/*循环输出1分*/合肥工业大学C语言程序设计试卷参考答案二、 单项选择题(20分,每题1分)1234567891011121314151617181920一、 填空(10分,每空1分)1C语言源程序中主函数名由系统规定为 __main_ ,程序员是不能改变的。2有数学表达式:-3,其C语言表达式为 __sqrt(x)-3 ______。3已知函数定义为:int stat(int a , float *p) . 则此函数的两个参数类型分别是 整形 、 指向浮点型的指针 。4设有数组a10;则首地址可以写成 _a或 &a0_ ,数组元素a3的地址可以写成__&a3_ 或a+3_ __。5要使以下程序段中的函数调用语句printf(“*”);执行10次,应在 处填入整数 __19或20____。for( i=1;i=______;i+=2 ) printf(“*”);7用只读方式打开e:1234目录下的名为 “aa.dat”的文件,正确的打开语句为FILE *fp;fp=fopen(“e:1234 aa.dat”,”r”); 。8.判断两个浮点型变量x和y是否相等一般用:if( fabs(x-y) 1e-6 ) 。9.已知赋值语句zhang.year =1985;可判断zhang是 结构或联合 类型的变量。说明:每一个空只有完全正确,得1分。三、 写出以下程序的运行结果(20分,每题5分)1 * 3行各1分,每行个数共1分,图形形状1分2m1=-16,m2=24 最小数2分,最大数2分,逗号1分(数据颠倒扣2分)3 930001 Wang 80.50930003 Li 95.50 两行记录各2分,格式1分4 67 两行数据各2分,格式1分四、 程序设计题(50分)1有一分段函数:2x + 5 (x=2)y= 3x - 4 (2x=5)7 (x5)编程序,输入变量 x的值,计算并输出y的值。(7分)#include stdio.hvoid main(void) -1分float x,y;/*或int x,y */ -1分scanf(“%f”,&x); -1分if(x = 2)y = 2*x+5;else if(x = 5)y = 3*x-4;elsey = 7; 条件分支3分printf(“y=%f”,y); -1分2由键盘任意输入10个同学的数学成绩,按从高分到低分的顺序排序,并输出排序后的成绩。(9分)#include stdio.hvoid main(void) -1分int a10,i,j,t; -1分for(i=0;i10;i+)scanf(“%d”,&ai); -1分for(i=0;i9;i+)for(j=i+1;j10;j+)if(aiaj)t=ai;ai=aj;aj=t;排序算法5分for(i=0; i10;i+)printf(“%5d”,ai); -1分3编写程序,通过级数 求的值,要求精度为10-6 (即某项的绝对值小于10-6),输出结果的值。(8分)#include stdio.h#include math.hvoid main(void) -1分float pi=0,t=1,it=1;int s=1;-2分while(fabs(t)1e-6)pi+=t;it+=2;s=-s;t=s/it;级数算法4分printf(“PI=%f”,4*pi);-1分4编写一程序任意输入一串字符,统计其中大写字母的个数,并输出结果。(7分)#include stdio.h#include string.hvoid main(void) -1分char str80;int iCount=0,i; -1分gets(str); -1分for(i=0;stri!=0;i+)if(srti=A&stri= Z)iCount+; 循环统计3分printf(“%5d”,iCount); -1分5由键盘任意输入9个整数,组成3行3列的二维数组,统计主对角线上元素的和。(7分)#include stdio.hvoid main(void) -1分int a33,i,j,sum=0; -1分for(i=0;i3;i+)for(j=0;j3;j+)scanf(“%d”,&aij); -2分for(i=0;i3;i+)sum+=aii;循环求和2分printf(“%5d”,sum); -1分6编制子函数,以判断一个整数n是否为素数,如果n是素数,则返回整数1;如果n不是素数,则返回整数0;并在主函数中调用该函数以统计100到200之间的素数的个数。(12分)#include stdio.hint isPrime(int);-1分void main(void)int i,iCount=0; -1分for(i=101;i200;i+=2)if(isPrimer(i)=1)iConut+循环统计3分printf(“%5d”,iCount);-1分int isPrime(int n)-1分int i;-1分for(i=2;i=n/2;i+)if(n%i = 0) return 0;循环判断3分return 1;-1分说明:1基本原则是:函数头1分,变量说明1分,输入1分,输出1分,其余为主体结构的分数; 2头文件没写扣1分,算法的主体结构不正确,扣主体结构的主要分数。3每题每个语法错误扣0.5分,三个语法错误扣2分,累计到2分为止。4要求用函数的没有使用函数,算法正确只能得一半分!5除第6题限制使用函数外,其余不限制方法。6由于结构错误、分支错误、循环错误,使程序执行不能得到正确结果,扣主体结构的主要分数。合肥工业大学C语言程序设计试卷参考答案一、 选择题D2A3B4C5B6D7B8C9B10B11B12D13D14D15D16B17A18C19C20A21A22C23B24B25C二、 填空题13 20x 3 1 4sin(x)+sqrt(x)-6*x 5 0 6string.h 7a=2,b=1 8递归 9 地址传递 10 41112 126 1316 14 4 1599三、 写出程序运行结果1 10, 101 01112 1+1=2 1+2=3 1+3=42+2=4 2+3=53+3=63 a=1,b=-5,c=0a=2,b=2,c=10a=3,b=-5,c=24 ABCDBCDCDD5 Input score: 90.5 (自拟)No: 1001Name: Wang yongScore: 90.56 3, 828四 程序设计题1 #include stdio.hvoid main() char ch; int letter=0,digit=0,other=0; while(ch=getchar()!= n)if(ch= a&ch= z|ch= A&ch= Z) letter+;else if(ch= 0&ch= 9) digit+;else other+;printf (“%d,%d, %dn”,letter, digit,other);2. #includestdio.h#define N 36void main() int i,j,t;float av=0,scoN;for(i=0;iN;i+) scanf(%f,&scoi);av+=scoi; av=av/N;for(i=0;iN-1;i+)for(j=i+1;j=N;j+)if(scoiscoj) t=scoi; scoi=scoj; scoj=t; for(i=0;iN;i+)printf(%4.2f,scoi);printf(n);for(i=0;iN;i+)if(scoiav)printf(%4.2fn,scoi);3. #includestdio.hvoid main() int n,i; float e=1, t=1;scanf(%d,&n);for(i=1;i=n;i+) t*=i;if(1/t)1e-6) e+=1/t;printf(ne=%f,e);4. #includestdio.h#define N 3void max(int c3,int *pmax,int *ps) int i,(*p)3;p=c;*pmax=p00;for(i=0;iN;i+) if(*pmaxpii) *pmax=pii; *ps=i; void main(void) int aNN,bN;int i,j,k,imax,pos;for(i=0;iN;i+)for(j=0;jN;j+)scanf(%d,&aij);max(a,&imax,&pos);printf(max:%dnposition:a%d%dn,imax,pos,pos);8

合肥工业大学c语言是试卷 合肥工业大学-C语言程序设计试卷参考答案.doc-资源下载人人文库网...

如果觉得《合肥工业大学c语言是试卷 合肥工业大学-C语言程序设计试卷参考答案.doc-资》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。