1、上海海事大学C语言期末上机题库 8试卷编号:9660所属语言:C语言试卷方案:练习1试卷总分:100分共有题型:5种一、填空 共8题 (共计8分)第1题 (1.0分) 题号:388设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为【1】.答案:=(答案1)=1.0=或=1第2题 (1.0分) 题号:516若s是int型变量,且s=6,则下面表达式的值是【1】.s%2+(s+1)%2答案:=(答案1)=1第3题 (1.0分) 题号:436下列程序的输出是【1】,main()int a=011;printf(%dn,+a);答案:=(答案1)=10第4题 (1.0分) 题号:
2、431执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf(%d %c,c1,c2);答案:=(答案1)=97 b第5题 (1.0分) 题号:440设a=3,b=4,c=5,则表达式!(a+b)+c-1&b+c/2的值为【1】.答案:=(答案1)=1第6题 (1.0分) 题号:35C语言表达式!(36)|(4=0);答案:=(答案1)=3第8题 (1.0分) 题号:438以下程序的输出结果为【1】,#include stdio.h main()int a;for(a=0;a=C:(类型)D:+答案:C第16题 (2.0分) 题号:2123设j和k都是int类型,
3、则for循环语句(). for(j=0,k=0;j0|E1;i-)for(j=1;ji;j+)putchar(#);A:无B:#C:#D:#答案:B第20题 (2.0分) 题号:2069设j和k都是int类型,则for循环语句 for(j=0,k=0;j=9&k!=876;j+) scanf(%d,&k);().A:最多执行10次B:最多执行9次C:是无限循环D:循环体一次也不执行答案:A四、程序填空 共3题 (共计27分)第1题 (9.0分) 题号:404/*-【程序填空】-题目:从键盘上输入两个复数的实部与虚部,求出并输出它们的 和、差、积、商。-*/#includevoid main()
4、float a,b,c,d,e,f; printf(输入第一个复数的实部与虚部:); scanf(%f, %f,&a,&b); printf(输入第二个复数的实部与虚部:); scanf(%f, %f,&c,&d);/*SPACE*/ 【?】; f=b+d; printf(相加后复数:实部:%f,虚部:%fn,e,f); e=a*c-b*d;/*SPACE*/ 【?】; printf(相乘后复数:实部:%f,虚部:%fn,e,f); e=(a*c+b*d)/(c*c+d*d);/*SPACE*/ 【?】; printf(相除后复数:实部:%f,虚部:%fn,e,f);答案:=(答案1)=e=a
5、+c=或=e=c+a=(答案2)=f=a*d+b*c=或=f= a*d + b*c=或=f= a * d + b * c=(答案3)=f=(b*c-a*d)/(c*c+d*d)=或=f=(b*c-a*d) / (c*c+d*d)=或=f=( b * c - a * d ) / ( c * c + d * d )第2题 (9.0分) 题号:428/*-【程序填空】-题目:输入一个学生的生日(年:y0、月:m0、日:d0),并输 入当前日期(年:y1、月:m1、日:d1)。求出该学生的 年龄(实足年龄)。-*/#include main()int age,y0,y1,m0,m1,d0,d1; pr
6、intf(输入生日日期(年、月、日));/*SPACE*/ 【?】(%d%d%d,&y0,&m0,&d0); printf(输入当前日期(年、月、日); scanf(%d%d%d,&y1,&m1,&d1); age=y1-y0;/*SPACE*/ if(m0【?】m1)age-;/*SPACE*/ if(m0【?】m1)&(d0d1)age-; printf(age=%3d,age);答案:=(答案1)=scanf=(答案2)=(答案3)=第3题 (9.0分) 题号:459/*-【程序填空】-题目:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为 1100分。选手最后得分为:去掉一个最高分
7、和一个最低分 后其余8个分数的平均值。请编写一个程序实现。-*/#includevoid main() int score,i,max,min,sum; max=-32768; min=32767; sum=0; for(i=1;imax=或=maxscore=(答案3)=scorescore=(答案4)=(sum-max-min)/8=或=(sum -max - min )/8五、程序设计 共1题 (共计10分)第1题 (10.0分) 题号:406/*-【程序设计】-*题目:编写函数fun计算下列分段函数的值: x*x+x+6 x0且x-3 f(x)= x*x-5x+6 0x10且x2及x3
8、 x*x-x-1 其它-注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数fun的花括号中填入所编写的若干语句。-*/#include stdio.hfloat fun(float x)/*Program*/* End */main() float x,f; printf(Input x=); scanf(%f,&x); f=fun(x); printf(x=%f,f(x)=%fn,x,f); getch(); yzj();yzj()FILE *IN,*OUT;int n;float i;float o;IN=fopen(in.dat,r);if(IN=NULL)printf(Read File Error);OUT=fopen(out.dat,w);if(OUT=NULL)printf(Write File Error);for(n=0;n10;n+) fscanf(IN,%f,&i); o=fun(i); fprintf(OUT,%fn,o);fclose(IN);fclose(OUT);答案:-OUT.Dat 为空 float y; if (x=0 & x10.0 & x!=2.0 & x!=3.0) y=x*x-5*x+6; else y=x*x-x-1;return y;-
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1