1、青大c程序填空题库试卷编号:10579所属语言:C语言试卷方案:TC_150*2试卷总分:490分共有题型:1种一、程序填空 共49题 (共计490分)第1题 (10.0分) 题号:428 难度:易 第2章/*-【程序填空】-功能:输入一个学生的生日(年:y0、月:m0、日:d0),并输 入当前日期(年:y1、月:m1、日:d1)。求出该学生的 年龄(实足年龄)。-*/#include main()int age,y0,y1,m0,m1,d0,d1; printf(输入生日日期(年,月,日));/*SPACE*/ 【?】(%d,%d,%d,&y0,&m0,&d0); printf(输入当前日期
2、(年,月,日); 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)=第2题 (10.0分) 题号:484 难度:易 第2章/*-【程序填空】-功能:识别输入的字符串,每个单词输出一行-*/#include #include void main() int c; int inspace; /*SPACE*/ 【?】; while(c = getchar()
3、 != n) if(c = | c = t | c = n) /*SPACE*/ if(【?】) inspace = 1; putchar(n); else inspace = 0; /*SPACE*/ 【?】; 答案:=(答案1)=inspace = 0=(答案2)=inspace = 0=(答案3)=putchar(c)第3题 (10.0分) 题号:611 难度:易 第20章/*-【程序填空】-题目:以下程序是实现输出 x,y,z 三个数中的最大者。-*/#includemain() int x = 4, y = 6,z = 7; /*SPACE*/ int u ,【?】; if(xy)
4、/*SPACE*/ 【?】; else u = y; if(uz) v = u; else v=z; printf(the max is %d,v );答案:=(答案1)=v=(答案2)=u=x第4题 (10.0分) 题号:476 难度:难 第2章/*-【程序填空】-功能:不用第三个变量,实现两个数的对调操作。-*/#include main() int a,b; scanf(%d %d,&a,&b); printf(a=%d,b=%dn,a,b); /*SPACE*/ a= 【?】 ; /*SPACE*/ b= 【?】 ; /*SPACE*/ a= 【?】 ; printf(a=%d,b=%
5、dn,a,b);答案:=(答案1)=a+b=(答案2)=a-b=(答案3)=a-b第5题 (10.0分) 题号:627 难度:中 第20章/*-【程序填空】-功能:调用函数fun计算m=1-2+3-4+9-10,并输出结果。-*/#include int fun( int n) int m=0,f=1,i; /*SPACE*/ for(i=1;【?】;i+) m+=i*f; /*SPACE*/ 【?】; /*SPACE*/ return 【?】;main() printf(m=%dn, fun(10);答案:=(答案1)=i=n=(答案2)=f= -f=(答案3)=m第6题 (10.0分) 题
6、号:417 难度:中 第2章/*-【程序填空】-功能:利用全局变量计算长方体的体积及三个面的面积。-*/#include int s1,s2,s3;int vs(int a,int b,int c) int v; /*SPACE*/ v=【?】; s1=a*b; /*SPACE*/ s2=【?】; s3=a*c; return v;main() int v,l,w,h; printf(ninput length,width and height: ); /*SPACE*/ scanf(%d%d%d,【?】,&w,&h); /*SPACE*/ v=【?】; printf(v=%d s1=%d s
7、2=%d s3=%dn,v,s1,s2,s3);答案:=(答案1)=a*b*c=(答案2)=b*c=(答案3)=&l=(答案4)=vs(l,w,h)第7题 (10.0分) 题号:27 难度:中 第1章/*-【程序填空】-功能:统计一个字符串中的字母、数字、空格和其它字符的个数。-*/#include void fun(char s,int b) int i; for (i=0;si!=0;i+) if (a=si&si=z|A=si&si=Z) b0+; /*SPACE*/ else if (【?】) b1+; /*SPACE*/ else if (【?】 ) b2+; else b3+;ma
8、in () char s180;int a4=0; int k; /*SPACE*/ 【?】; gets(s1); /*SPACE*/ 【?】; puts(s1); for(k=0;k4;k+) printf(%4d,ak);答案:=(答案1)=0=si & si=9=(答案2)=si = =(答案3)=void fun(char s,int b)=(答案4)=fun(s1,a)第8题 (10.0分) 题号:425 难度:易 第2章/*-【程序填空】-功能:当输入“2,5”的时候输出为“2 5 5”-*/#include #define max 100main() int fmax,i,j,k
9、,m; scanf(%d,%d,&k,&m); /*SPACE*/ for(i=0;i=【?】;i+) fi=0; /*SPACE*/ f【?】=1; for(i=k;i=m;i+) /*SPACE*/ for(j=i-k;j=i-1;j+) fi【?】fj; printf(%d%10d%10dn,k,m,fm);答案:=(答案1)=m=(答案2)=k-1=(答案3)=+=第9题 (10.0分) 题号:162 难度:中 第1章/*-【程序填空】-题目:下列程序的功能为:输出100以内能被4整除且个位数为8的所有整数; 请填写适当的符号或语句,使程序实现其功能。-*/#include main(
10、) int i,j;/*SPACE*/ for(i=0;【?】; i+) j=i*10+8;/*SPACE*/ if ( 【?】) /*SPACE*/ 【?】; printf(%d,j); 答案:=(答案1)=i10=(答案2)=j%4!=0=(答案3)=continue第10题 (10.0分) 题号:23 难度:中 第1章/*-【程序填空】-功能:求一个二维数组中每行的最大值和每行的和。-*/#include main() int a55,b5,c5,i,j,k,s=0; for(i=0;i5;i+) for(j=0;j5;j+) aij=random(40)+20; for(i=0;i5;
11、i+) /*SPACE*/ k=ai0; 【?】 ; for(j=0;j5;j+) /*SPACE*/ if(kaij) 【?】 ; s=s+aij; bi=k; /*SPACE*/ 【?】 ; for(i=0;i5;i+) for(j=0;j5;j+) /*SPACE*/ printf(%5d, 【?】 ); printf(%5d%5d,bi,ci); printf(n); 答案:=(答案1)=s=0=(答案2)=k=aij=(答案3)=ci=s=(答案4)=aij第11题 (10.0分) 题号:20 难度:中 第1章/*-【程序填空】-功能:求两个非负整数的最大公约数和最小公倍数。-*/#
12、include main() int m,n,r,p,gcd,lcm; scanf(%d%d,&m,&n); if(mn) p=m,m=n;n=p; p=m*n; r=m%n; /*SPACE*/ while(【?】 ) /*SPACE*/ m=n;n=r; 【?】; /*SPACE*/ gcd=【?】; lcm=p/gcd; /*SPACE*/ printf(gcd=%d,lcm=%dn, 【?】);答案:=(答案1)=r=(答案2)=r=m%n=(答案3)=n=(答案4)=gcd,lcm第12题 (10.0分) 题号:443 难度:中 第2章/*-【程序填空】-功能:企业发放的奖金根据利润
13、提成。利润(i)低于或等于10万元 时,奖金可提10%;利润高于10万元,低于20万元时,低于 10万元的部分按10%提成,高于10万元的部分,可可提成7.5% ;20万到40万之间时,高于20万元的部分,可提成5%;40万 到60万之间时高于40万元的部分,可提成3%;60万到100万 之间时,高于60万元的部分,可提成1.5%,高于100万元时, 超过100万元的部分按1%提成,从键盘输入当月利润i,求 应发放奖金总数?-*/#include main() long int i; double bonus1,bonus2,bonus4,bonus6,bonus10,bonus; scanf
14、(%ld,&i); bonus1=100000*0.1;bonus2=bonus1+100000*0.75; bonus4=bonus2+200000*0.5; bonus6=bonus4+200000*0.3; bonus10=bonus6+400000*0.15; if(i=100000) bonus=i*0.1; /*SPACE*/ else if(【?】) bonus=bonus1+(i-100000)*0.075; /*SPACE*/ else if(【?】) bonus=bonus2+(i-200000)*0.05; /*SPACE*/ else if(【?】) bonus=bon
15、us4+(i-400000)*0.03; else if(i=1000000) bonus=bonus6+(i-600000)*0.015; else bonus=bonus10+(i-1000000)*0.01; /*SPACE*/ 【?】(bonus=%d,bonus);答案:=(答案1)=i=200000 =(答案2)=i=600000=(答案3)=i=1000000=(答案4)=printf第13题 (10.0分) 题号:613 难度:较易 第20章/*-【程序填空】-题目:有以下程序段,且变量已正确定义和赋值 for(s=1.0,k=1;k=n;k+) s=s+1.0/(k*(k+1
16、); printf(s=%fnn,s); 请填空,使下面用/./标识的程序段的功能与 之完全相同。-*/#include main() double s; int k,n=10; /*SPACE*/ 【?】; k=1; /*SPACE*/ while(【?】) s=s+1.0/(k*(k+1); /*SPACE*/ 【?】; printf(s=%fnn,s);答案:=(答案1)=s=1=(答案2)=k=n=(答案3)=k+第14题 (10.0分) 题号:134 难度:中 第1章/*-【程序填空】-功能:用冒泡法对数组a 进行由小到大的排序。-*/#include void fun(int a,int n) int i,j,t; /*
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1