您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > while及do-while循环语句练习
while语句5.8下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一对相等数时结束循环,请选择填空__c___#includestdio.hvoidmain(){inta,b,t;scanf(“%d%d”,&a,&b);while(【1】){if(ab){t=a;a=b;b=t;}printf(“%d,%d\n”,a,b);scanf(“%d%d”,&a,&b);}}A)!a=bB)a!=bC)a==bD)a=b5.9下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m,n中的较大者,请选择填空_______#includestdio.hvoidmain(){intm=0,n=0;charc;while((【1】)!=’\n’){if(c=’A’&&c=’Z’)m++;if(c=’a’&&c=’z’)n++;}printf(“%d\n”,mn?【2】);【1】A)c=putchar()B)getchar()C)c=getchar()D)scanf(“%c”,c)【2】A)n:mB)m:nC)m:mD)n:n5.10下面程序的功能是将小写字母变成对应大写字母后的第二个字母。其中y变成A,z变成B。请选择填空________#includestdio.hmain(){charc;while((c=getchar())!=’\n’){if(c=’a’&&c=’z’){【1】;if(c’Z’&&c=’Z’+2)【2】;}printf(“%c”,c);}}【1】A)c+=2B)c-=32C)c=c+32+2D)c-=30【2】A)c='B'B)c='A'C)c-=26D)c=c+265.11下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环,请选择填空_____#includestdio.hmain(){inta,max=0;scanf(“%d”,&a);while(【1】){if(maxa)max=a;scanf(“%d”,&a);}printf(“%d”,max);}【1】A)a==0B)aC)!a==1D)!a5.12下面程序的运行结果是______#includestdio.hvoidmain(){intnum=0;while(num=2){num++;printf(%d\n,num);}}A)1B)1C)1D)12223345.13若运行以下程序时,从键盘输入2473CR(CR表示回车),则下面程序的运行结果是____#includestdio.hvoidmain(){intc;while((c=getchar())!='\n')switch(c-‘2'){case0:case1:putchar(c+4);case2:putchar(c+4);break;case3:putchar(c+3);default:putchar(c+2);break;}printf(\n);}A)668977B)668966C)66778777D)6688766do-while语句5.14C语言中while和do-while循环的主要区别是______。A)do-while的循环体至少无条件执行一次B)while的循环控制条件比do-while的循环控制条件严格C)do-while允许从外部转到循环体内D)do-while的循环体不能是复合语句5.15以下能正确计算1X2X3X…X10的程序段是_____.A)do{i=1;s=1;s=s*i;i++;}while(i=10);B)do{i=1;s=0;s=s*i;i++;}while(i=10);C)i=1;s=1;do{s=s*i;i++;}while(i=10);D)i=1;s=0;do{s=s*i;i++;}while(i=10);5.16以下程字段_____。x=-1;do{x=x*x;}while(!x);A)是死循环B)循环执行二次C)循环执行一次D)有语法错误5.17以下描述中正确的是_______A)由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号C)在do-while循环体中,一定要有能使while后面表达式的值变为零(”假”)的操作D)do-while循环中,根据情况可以省略while5.18若有如下语句intx=3;do{printf(%d\n,x-=2);}while(!(--x));则上面程序段_________A)输出的是1B)输出的是1和-2C)输出的是3和0D)是死循环5.19下面程序的功能是计算正整数2345的各位数字平方和,请选择填空________.#includestdio.hvoidmain(){intn,sum=0;n=2345;do{sum=sum+【1】;n=【2】;}while(n);printf(sum='%d,sum);}【1】A)n%10B)(n%10)*(n%10)C)n/10D)(n/10)*(n/10)【2】A)n%1000B)n/100C)n/10D)n%105.20下面程序是从键盘输入学号.然后输出学号中百位数字是3的学号,输入0时结束循环。请选择填空。#includestdio.hvoidmain(){longintnum;scanf(%ld,&num);do{if(【1】)printf(“学号百分位为3的学号为%d”,num);scanf(“%ld”,&num);}while(【2】);【1】A)num%100/10==3B)num/100%10==3C)num%10/10==3D)num/10%10==3【2】A)!numB)num0==0C)!num==0D)!num!=05.22下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除。请选择填空。#includestdio.hvoidmain(){inti=0,j,k;do{i++;k=316-13*i;}while(【1】);j=k/11;printf(316=13*%d+11*%d”,i,j);}【1】A)k/11B)k%11C)k/11==0D)k/11=05.23下面程序的运行结果是________#includestdio.hvoidmain(){inty=10;do{y--;}while(--y);printf(%d\n,y--);}A)-1B)1C)8D)05.24若运行以下程序时,从键盘输入ADescriptorCR(CR表示回车),则下面程序的运行结果是__。#includestdio.hvoidmain(){charc;intv0=0,vl=0,v2=0;do{switch(c=getchar()){case‘a’:case'A':case‘e’:case'E':case‘i’:case'I':case‘o’:case'O':case‘u’:case'U':vl+=1;default:v0+=1;v2+=1;}}while(c!='\n');printf(v0=%d,vl=%d,v2=%d\n,v0,vl,v2);}A)v0=7,v1=4,v2=7B)v0=8,v1=4,v2=8C)v0=11,v1=4,v2=11D)v0=12,v1=4,v2=125.25下面程序的运行结果是______。#includestdio.hvoidmain(){inta=1,b=10;do{b-=a;a++;}while(b--0);printf(a=%d,b=%d\n,a,b);}A)a=3,b=11B)a=2,b=8C)a=1,b=-1D)a=4,b=9
本文标题:while及do-while循环语句练习
链接地址:https://www.777doc.com/doc-5129733 .html