C语言测试试题及答案_第1页
C语言测试试题及答案_第2页
C语言测试试题及答案_第3页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言测试试题及答案一个爱书的人,他必定不致于缺少一个忠实的朋友,一个良好的老师,一个可爱的伴侣,一个温情的抚慰者。以下是为大家搜索的测试试题及答案,希望能给大家带来帮助!更多精彩内容请及时关注我们!1.#include"stdio.h"main(){charc;c=getchar();while(c!='?'){putchar(c);c=getchar();}}如果从键盘输入abcde?fgh(回车)运行结果为:abcde2.#includemain(){charc;while((c=getchar())!=’$’){if(‘A’<=c&&c<=‘Z’)putchar(c);elseif(‘a’<=c&&c<=‘z’)putchar(c-32);}}当输入为ab*AB%cd#CD$时,运行结果为:ABABCDCD3.#includemain(){intx,y=0;for(x=1;x<=10;x++){if(y>=10)break;y=y+x;}printf(“%d%d”,y,x);}运行结果为:105详见教材p120for语句详见教材p126~128break,continue语句for(表达式1;表达式2;表达式3){}12(3).(5)3(2)继续执行循环完毕,执行forbreak,跳出循环体;continue,完毕本次循环(第i次循环),继续执行下一次循环(第i+1次循环)1为x=12(循环条件)为x<=10为x++初值x1,y02)x<=10循环体1执行if010,if行break;执行y=y+x;y=0+1=13,执行x++,x=x+1=1+1=2。循环条件x<=1022执行if110,if行break;执行y=y+x;y=1+2=33,执行x++,x=x+1=2+1=3。循环条件x<=1033执行if310,if行break;执行y=y+x;y=3+3=63,执行x++,x=x+1=3+1=4。循环条件x<=1044执行if610,if行break;执行y=y+x;y=6+4=103,执行x++,x=x+1=4+1=5。循环条件x<=1055执行if1010,ifbreak,跳出循环。从breakforprintf(“%d%d”,y,x);输出当前的y与x.结果为1054.#includemain(){charch;ch=getchar();switch(ch){case‘A’:printf(“%c”,’A’);case‘B’:printf(“%c”,’B’);break;default:printf(“%s\n”,”other”);}}当从键盘输入字母A时,运行结果为:AB详见教材p103,switch语句switch(表达式){case11case22┇┇┇case常量n:语句ndefault:语句n+1}其中表达式,常量1,…,常量n都为整型或字符型case相当于给出执行程序的入口和起始位置,假设找到匹配的常量,那么从此处开始往下执行程序,不再匹配常量,直至遇到break或switch完毕此题过程:首先从键盘接收一个字符’A’并将其放在变量ch中。执行switch语句。Switch后面的条件表达式为ch,因此表达式的值即为字符’A’.用字符’A’依次与下面的case中的常量匹配。1个case屏幕上输出A;再往下继续执行printf(“%c”,’B’),屏幕上输出B;再继续执行break,此时跳出switch5.#includemain(){inta=1,b=0;scanf(“%d”,&a);switch(a){case1:b=1;break;case2:b=2;break;default:b=10;}printf("%d",b);}5此题过程:首先用scanf函数为变量a赋值为5。执行switchswitcha,因此表达式5.5case常量,因此两个casedefault10b。输出变量b,结果为106.#includemain(){chargrade=’C’;switch(grade){case‘A’:printf(“90-100\n”);case‘B’:printf(“80-90\n”);case‘C’:printf(“70-80\n”);case‘D’:printf(“60-70\n”);break;case‘E’:printf(“<60\n”);default:printf(“error!\n”);}}运行结果为:70-8060-70此题过程:首先从键盘接收一个字符’C’并将其放在变量grade中。执行switch语句。switch后面的条件表达式为grade,因此表达式的值即为字符’C’.用字符’C’依次与下面的case中的常量匹配。3个case程序(在执行过程中不再进展匹配。)因此先执行printf(“70-80\n”);,70-8060-70,此时跳出switch7.#includemain(){inty=9;for(;y>0;y--)if(y%3==0){printf(%d”,--y);}}运行结果为:852详见教材p53,自增自减符号12(循环条件)为y>0为y--初值y92)y>01执行if9%3==0,if-y),即y188转向表达式3,执行y--,y=y-1=8-1=7。循环条件y>0成立,进入第2次循环2执行if7%30,if行printf(%d”,--y)转向表达式3,执行y--,y=y-1=7-1=6。循环条件y>0成立,进入第3次循环3执行if6%3==0,if-y),即y155转向表达式3,执行y--,y=y-1=5-1=4。循环条件y>0成立,进入第4次循环4执行if4%30,if行printf(%d”,--y)转向表达式3,执行y--,y=4-1=3。循环条件y>0成立,进入第5次循环5执行if3%3==0,if-y),即y122转向表达式3,执行y--,y=y-1=2-1=1。循环条件y>0成立,进入第5次循环6执行if1%30,if行printf(%d”,--y)3,执行y--,y=1-1=0。循环条件y>0完毕。8.#includemain(){inti,sum=0;i=1;do{sum=sum+i;i++;}while(i<=10);printf(“%d”,sum);}运行结果为:559.#include#defineN4main(){inti;intx1=1,x2=2;printf("\n");for(i=1;i<=N;i++){printf("%4d%4d",x1,x2);if(i%2==0)printf("\n");x1=x1+x2;x2=x2+x1;}}运行结果为:12358132134此题首先为整型变量赋初值x1=1,x2=21为i=12(循环条件)为i<=N即i<=43为i++循环变量初值i12)i<=411执行printf("%4d%4d",x1,x2);因此屏幕上输出12执行if1%20,if行printf("\n");执行x1=x1+x2=1+2=3;此时x1执行x2=x2+x1=2+3=5。3,执行i++,i2。循环条件i<=422执行printf("%4d%4d",x1,x2);因此屏幕上输出35执行if2%2==0,ifprintf("\n");换行执行x1=x1+x2=3+5=8;此时x1执行x2=x2+x1=5+8=13。3,执行i++,i3。循环条件i<=433执行printf("%4d%4d",x1,x2);因此屏幕上输出813执行if3%20,if行printf("\n");执行x1=x1+x2=8+13=21;此时x1执行x2=x2+x1=21+13=34。3,执行i++,i4。循环条件i<=442执行printf("%4d%4d",x1,x2);因此屏幕上输出2134执行if4%2==0,ifprintf("\n");换行执行x1=x1+x2=21+34=55;此时x1执行x2=x2+x1=34+55=89。3,执行i++,i5。循环条件i<=4循环10#includemain(){intx,y;for(x=30,y=0;x>=10,y<10;x--,y++)x/=2,y+=2;printf(“x=%d,y=%d\n”,x,y);}运行结果为:x=0,y=1211.#include#defineN4main(){inti,j;for(i=1;i<=N;i++){for(j=1;j printf("printf("*");printf("\n");}}运行结果为:****详见教材P41符号常量用宏处理指令定义符号常量N4,在编译过程中,遇到N4。外层for1为i=12(i<=N3i++内层for循环,表达式1为j=1,表达式2(循环条件)为j1,i1,使得循环条件i<=4进入外层for外层for1i1内层循环j=1,使得循环条件j 执行执行printf("\n");换行3,i+i2.使得循环条件i<=4成立,再次进入外层for外层for2i内层循环j=1,使得循环条件j 第1次执行内层循环printf("");执行内层循环表达式3,j++为2,j 执行执行printf("\n");换行3,i+i3.使得循环条件i<=4成立,进入外层for循环体外层for3i3内层循环j=1,使得循环条件j 第1次执行内层循环printf("");执行内层循环表达式3,j++为2,j 第2次执行内层循环printf("");执行内层循环表达式3,j++为3,j 执行执行printf("\n");换行3,i+i4.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论