5.1.7 当运行以下程序时,从键盘输入“right? <回车>”,则下面程序的运行结果是sjhiu 。
#include
while((c=getchar())!=???) putchar(++c); }
5.1.8 下面程序的运行结果是 s=254 。
#include
{ int a,s,n,count;
a=2; s=0; n=1; count=1;
while(count<=7) { n=n*a; s=s+n; ++count; } printf(“s=%d”,s); }
5.1.9 执行下面程序段后,k的值是 36 。
k=1;n=263;
do{ k*=n; n/=10; } while(n); 5.1.10 下面程序的运行结果是 -10 。
#include
for(i=100; i>=0; i-=10); printf(“%d\\n”, i); }
5.1.11 下面程序使循环结束的条件式 i==0 。
#include
for(i=250;i;i-=5) printf(“%d\\n”,i); }
5.1.12 以下程序输出结果为 x=-1,y=21 。
#include
for(x=30,y=0;x>=10,y<20;x--,y++) x/=2, y+=2;
printf(“x=%d, y=%d\\n”,x,y);
5.1.13 下面程序的功能是计算1-3+5-7+...-99+100的值,请填空。
#include
{ int i, t=1, s=0;
for( i=1; i<=101; i+=2) { t=t*i ; s=s+t; t=-t/i ; } printf(“%d\\n”,s); }
5.1.14 下面程序的运行结果是****。
#include
for(i=j; i<2*j; i++) switch(i/j) { case 0:
case 1: printf(”*”); break; case 2: printf(“#”); } }
5.1.15 下面程序的输出结果是i=6, k=4 。
#include
void main() { int i, j,k=19; while(i=k-1) { k-=3;
if(k%5==0) { i++; continue; } else if(k<5) break; i++; }
printf(“i=%d, k=%d\\n”,i k); }
5.2 选择题
5.2.1 设有程序段:int k=10; while(k=0) k=k-1;,则下面描述正确的是( C)。
A) while循环执行10次 B) 循环时无限循环 C) 循环体语句一次也不执行 D) 循环体语句执行一次 5.2.2 有以下程序:
#include
void main() { while(putchar(getchar())!=???); }
当输入“china?”时,程序的执行结果是( D )。
A) china B) dijob C) dijiob? D) china? 5.2.3 语句while(!E);中的表达式!E等价于( A )。
A) E==0 B) E!=1 C) E!=0 D) E==1 5.2.4 下面程序段的运行结果是( A )。
a=1;b=2;c=2; while(a
{ t=a; a=b; b=t;c- -; }
printf(“%d,%d,%d”,a,b,c);
A) 1,2,0 B) 2,1,0 C) 1,2,1 D) 2,1,1 5.2.5 下面程序段的输出结果是( C )。
int n=0;
while(n++<=2); printf(“%d“,n);
A) 2 B) 3 C) 4 D) 有语法错误
5.2.6 下面程序的功能是将从键盘输入的一对数,由小到大排序输出。当输入一
对相等数时结束循环,请选择填空。 #include
scanf(“%d,%d”,&a,&b); while( B ) { if(a>b)
{ t=a; a=b; b=t; } printf(%d,%d\\n“,a,b); scanf(“%d,%d”,&a,&b); }
}
A) !a=b B) a!=b C) a==b D) a=b
5.2.7 下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小
写字母的个数n,并输出m、n中的较大者,请选择填空。 #include
{ int m=0,n=0; char c;
scanf(“%d,%d”,&a,&b); while( ( [1] C )!=?\\n ? ) { if(c>=?A?&&c<=?Z?) m++; if(c>=?a?&&c<=?z?) n++; } printf(“%d”,m } [1] A) c==getchar( ) B) getchar( ) C) c=getchar( ) D) scanf(“%c”,c) [2] A) n:m B) m:n C) m:m D) n:n 5.2.8 下面程序的功能是在输入的一批正整数中求出最大者,输入0结束循环, 请选择填空。 #include { int a,max=0; scanf(“%d”,&a); while( B )