310C语言填空测试31题.docx
- 文档编号:8439244
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:33
- 大小:21.13KB
310C语言填空测试31题.docx
《310C语言填空测试31题.docx》由会员分享,可在线阅读,更多相关《310C语言填空测试31题.docx(33页珍藏版)》请在冰豆网上搜索。
310C语言填空测试31题
试卷方案:
C程序填空
第1题(10.0分)题号:
2难度:
中第1章
功能:
下面的程序是求1!
+3!
+5!
+……+n!
的和。
-------------------------------------------------------*/
#include
main()
{
longintf,s;
inti,j,n;
/***********SPACE***********/
【?
】;
scanf("%d",&n);
/***********SPACE***********/
for(i=1;i<=n;【?
】)
{
f=1;
/***********SPACE***********/
for(j=1;【?
】;j++)
/***********SPACE***********/
【?
】;
s=s+f;
}
/***********SPACE***********/
printf("n=%d,s=%ld\n",【?
】);
}
答案:
=======(答案1)=======
s=0
=======(答案2)=======
i+=2
=========或=========
i=i+2
=========或=========
i++,i++
=======(答案3)=======
j<=i
=========或=========
i>=j
=========或=========
j
=========或=========
i+1>j
=======(答案4)=======
f=f*j
=========或=========
f=j*f
=======(答案5)=======
n,s
第2题(10.0分)题号:
6难度:
中第1章
功能:
以每行5个数来输出300以内能被7或17整除的偶数,并求出
其和。
-------------------------------------------------------*/
#include
#include
main()
{
inti,n,sum;
sum=0;
/***********SPACE***********/
【?
】;
/***********SPACE***********/
for(i=1;【?
】;i++)
/***********SPACE***********/
if(【?
】)
if(i%2==0)
{
sum=sum+i;
n++;
printf("%6d",i);
/***********SPACE***********/
if(【?
】)
printf("\n");
}
printf("\ntotal=%d",sum);
}
答案:
=======(答案1)=======
n=0
=======(答案2)=======
i<=300
=========或=========
i<300
=========或=========
300>=i
=========或=========
300>i
=======(答案3)=======
i%7==0||i%17==0
=========或=========
!
(i%7)||!
(i%17)
=========或=========
!
(i%17)||!
(i%7)
=========或=========
!
(i%7&&i%17)
=======(答案4)=======
n%5==0
=========或=========
!
(n%5)
=========或=========
n/5*5==n
第3题(10.0分)题号:
12难度:
中第1章
功能:
输出100到1000之间的各位数字之和能被15整除的所有数,
输出时每10个一行。
-------------------------------------------------------*/
#include
main()
{intm,n,k,i=0;
for(m=100;m<=1000;m++)
{
/***********SPACE***********/
【?
】;
n=m;
do
{
/***********SPACE***********/
k=k+【?
】;
n=n/10;
}
/***********SPACE***********/
【?
】;
if(k%15==0)
{
printf("%5d",m);i++;
/***********SPACE***********/
if(i%10==0)【?
】;
}
}
}
答案:
=======(答案1)=======
k=0
=======(答案2)=======
n%10
=========或=========
n-n/10*10
=========或=========
n-10*(n/10)
=======(答案3)=======
while(n>0)
=========或=========
while(0 =========或========= while(n! =0) =========或========= while(0! =n) =======(答案4)======= printf("\n") 第4题(10.0分)题号: 40难度: 中第1章 功能: 输入整数a和b,交换a和b后输出。 -------------------------------------------------------*/ #include voidmain() {inta,b,temp; printf("输入整数a,b: "); scanf("%d%d",&a,&b); temp=a; /***********SPACE***********/ 【? 】; /***********SPACE***********/ 【? 】; printf("a=%db=%d\n",a,b); } 答案: =======(答案1)======= a=b =======(答案2)======= b=temp 第5题(10.0分)题号: 44难度: 中第91章 题目: 某等差数列的第一项a=2,公差d=3。 下面程序的功能是在前n(1≤n≤10)项和中, 输出所有项的和能被4整除者。 请填空。 -------------------------------------------------------*/ #include voidmain() { inta,d,sum,n,i; /***********SPACE***********/ a=2;d=3;i=1;sum=【? 】; scanf("%d",&n); do{ sum+=a; i++; /***********SPACE***********/ 【? 】; /***********SPACE***********/ if(【? 】) printf("%d\n",sum); }while(i<=n); } 答案: ======(答案1)======= 0 =======(答案2)======= a+=d =========或========= a+=3 =======(答案3)======= sum%4==0 第6题(10.0分)题号: 42难度: 中第1章 功能: 下面程序的功能是用do-while语句求1至1000之间满足 "用3除余2;且用5除余3"的数,且一行只打印五个数。 -------------------------------------------------------*/ #include main() { inti=1,j=0; do{ /***********SPACE***********/ if(【? 】) { printf("%4d",i); j=j+1; /***********SPACE***********/ if(【? 】)printf("\n"); } i=i+1; }while(i<1000); }答案: =======(答案1)======= i%3==2&&i%5==3 =======(答案2)======= j%5==0 第7题(10.0分)题号: 47难度: 中第92章 功能: 从键盘输入一个大写字母赋给c1,要求改用小写字母输出。 -------------------------------------------------------*/ #include voidmain() { charc1,c2; /***********SPACE***********/ c1=【? 】; /***********SPACE***********/ c2=【? 】; printf("%c,%c",c1,c2); }答案: =======(答案1)======= getchar() =======(答案2)======= c1+32 第8题(10.0分)题号: 105难度: 中第2章 功能: 计算一元二次方程的根。 -------------------------------------------------------*/ #include /***********SPACE***********/ #include【? 】 main() { doublex1,x2,imagpart; floata,b,c,disc,realpart; scanf("%f%f%f",&a,&b,&c); printf("theequation"); /***********SPACE***********/ if(【? 】<=1e-6) printf("isnotquadratic\n"); else disc=b*b-4*a*c; if(fabs(disc)<=1e-6) printf("hastwoequalroots: %-8.4f\n",-b/(2*a)); /***********SPACE***********/ elseif(【? 】) { x1=(-b+sqrt(disc))/(2*a); x2=(-b-sqrt(disc))/(2*a); printf("hasdistinctrealroots: %8.4fand%.4f\n",x1,x2); } else { realpart=-b/(2*a); imagpart=sqrt(-disc)/(2*a); printf("hascomplexroots: \n"); printf("%8.4f=%.4fi\n",realpart,imagpart); printf("%8.4f-%.4fi\n",realpart,imagpart); } } 答案: =======(答案1)======= =======(答案2)======= fabs(a) =======(答案3)======= fabs(disc)>1e-6 =========或========= 1e-6 第9题(10.0分)题号: 192难度: 中第1章 /*下面程序的功能是将从键盘输入的两个数由小到大排列输出。 当输入两个相等数时结束循环,请填空完成程序。 */ #include main() { inta,b,t; scanf("%d%d",&a,&b); /***********SPACE***********/ while(【? 】) { if(a>b) /***********SPACE***********/ {t=a;【? 】;b=t;} printf("%d%d\n",a,b); /***********SPACE***********/ 【? 】; } } 答案: =======(答案1)======= a! =b =======(答案2)======= a=b =======(答案3)======= scanf("%d%d",a,b) 第10题(10.0分)题号: 194难度: 中第1章 功能: 使用while()语句计算前100个自然数之和 -------------------------------------------------------*/ #include main() { inti,sum; i=1; sum=0; /***********SPACE***********/ while(【? 】) { sum=sum+i; /***********SPACE***********/ 【? 】; } printf("1+2+3+...+100=%d\n",sum); } 答案: =======(答案1)======= i<=100 =========或========= i<101 =======(答案2)======= i++ 第11题(10.0分)题号: 78难度: 易第2章 功能: 输出9*9口诀。 -------------------------------------------------------*/ #include main() { inti,j,result; printf("\n"); /***********SPACE***********/ for(i=1;【? 】;i++) { /***********SPACE***********/ for(j=1;j<10;【? 】) { result=i*j; /***********SPACE***********/ printf("%d*%d=%-3d",i,j,【? 】); } printf("\n"); } } 答案: =======(答案1)======= i<10 =========或========= 10>i =========或========= i<=9 =======(答案2)======= j++ =========或========= ++j =========或========= j=j+1 =======(答案3)======= result 第12题(10.0分)题号: 12难度: 中第1章 功能: 输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。 -------------------------------------------------------*/ #include main() { intm,n,k,i=0; for(m=100;m<=1000;m++) { /***********SPACE***********/ 【? 】; n=m; do { /***********SPACE***********/ k=k+【? 】; n=n/10; } /***********SPACE***********/ 【? 】; if(k%15==0) { printf("%5d",m);i++; /***********SPACE***********/ if(i%10==0)【? 】; } } } 答案: =======(答案1)======= k=0 =======(答案2)======= n%10 =========或========= n-n/10*10 =========或========= n-10*(n/10) =======(答案3)======= while(n>0) =========或========= while(0 =========或========= while(n! =0) =========或========= while(0! =n) =======(答案4)======= printf("\n") 第13题(10.0分)题号: 333难度: 中第2章 /*以下是用“辗转相除法”求两个正整数m和n和最大公约数的程序,请填空*/ #include main() { intr,m,n,t; printf("Enterm,n: "); /***********SPACE***********/ scanf("%d,%d",【? 】); printf("m=%d,n=%d\n",m,n); /***********SPACE***********/ r=【? 】; /***********SPACE***********/ while(【? 】) { m=n; n=r; /***********SPACE***********/ r=【? 】; } /***********SPACE***********/ printf("H.C.F=【? 】\n",n); } 答案: =======(答案1)======= &m,&n =======(答案2)======= m%n =======(答案3)======= r! =0 =========或========= r =======(答案4)======= m%n =======(答案5)======= %d 第14题(10.0分)题号: 348难度: 中第2章 /*从键盘上输入一个3位数,然后将它反向输出,如输入123,则输出321。 (练习高教P27)*/ /***********SPACE***********/ #include【? 】 main() { inta,b; /***********SPACE***********/ scanf("%d",【? 】); /***********SPACE***********/ b=【? 】; printf("%d",b); /***********SPACE***********/ a=【? 】; b=a%10; printf("%d",b); /***********SPACE***********/ a=【? 】; printf("%d\n",a); }答案: =======(答案1)======= =======(答案2)======= &a =======(答案3)======= a%10 =======(答案4)======= a/10 =======(答案5)======= a/10 第15题(10.0分)题号: 363难度: 中第2章 /*…………………………………………………………………………………………………… 编写程序实现以下功能: 求-1+3-5+...-101的值,(输出算式的前15项及最后一项) ………………………………………………………………………………………………………*/ #include voidmain() { inti,f=1,s; s=0; /***********SPACE***********/ for(i=1;i<=101;【? 】) { f=-f; /***********SPACE***********/ s=【? 】; /***********SPACE***********/ if(【? 】) { /***********SPACE***********/ if(【? 】) printf("+%d",i); else printf("-%d",i); } } printf("..."); if(f==1) printf("+%d",i-2); else printf("-%d",i-2); /***********SPACE***********/ printf("=%d\n",【? 】); } 答案: =======(答案1)======= i+=2 =======(答案2)======= s+i*f =========或========= s+f*i =========或========= i*f+s =======(答案3)======= i<=30 =========或========= i<30 =========或========= i<=29 =======(答案4)======= f==1 =========或========= f>0 =========或========= 0 =========或========= 1==f =======(答案5)======= s 第16题(20.0分)题号: 242难度: 中第1章 /*输入两个数,按由小到大次序输出两数*/ ------------------------------------------------------- #include voidmain() { floata,b,【1】; scanf("【2】,%f",&a,&b); if(【3】) { 【4】;a=b;【5】; } printf("%5.2f,%5.2f\n",a,b); } 答案: =======(答案1)======= t =======(答案2)======= %f =======(答案3)======= a>b =======(答案4)======= t=a =======(答案5)======= b=t 第17题(20.0分)题号: 243难度: 中第1章 /*输入三个整数x,y,z,请把这三个数由小到大输出*/ ------------------------------------------------------- #include main() {intx,y,z,【1】; scanf("【2】",&x,&y,&z); if(x>y) { 【3】;x=y;y=t; } if(【4】) { t=z;z=x;x=t; } if(【5】) { t=y;y=z;z=t; } printf(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 310 语言 填空 测试 31