19.以下程序的输出结果是( B )。
main()
{ int num=0;
while(num<=2)
{ num++; printf(“%d\n”,num);}
}
A) 1
B) 1
C) 1
D) 1
2 2 2
3 3
4
20.设有程序段
int k=10;
while(k=0) k=k-1;
则下面描述中正确的是( C )。
A) while循环执行10次
B) 循环是无限循环
C) 循环体语句一次也不执行
D) 循环体语句执行一次
21.设有以下程序段
int x=0,s=0;
while(!x!=0) s+=++x;
printf("%d",s);
则( B )。
A) 运行程序段后输出0
B) 运行程序段后输出1
C) 程序段中的控制表达式是非法的
D) 程序段执行无限次
22.语句while(!E);中的表达式!E等价于( A )。
A) E==0
B) E!=1
C) E!=0
D) E==1
23.下面程序段的运行结果是( A )。
a=1;b=2;c=2;
while(a printf("%d, %d, %d", a, b, C);
A) 1,2,0
B) 2,1,0
C) 1,2,1
D) 2,1,1
24.下面程序段的运行结果是( D )。
x=y=0;
while(x<15) y++,x+=++y;
printf("%d, %d", y, x);
A) 20,7
B) 6,12
C) 20,8
D) 8,20
25.以下程序段的执行结果是( B )。
int a, y;
a=10; y=0;
do
{ a+=2; y+=a;
printf("a=%d y=%d\n", a, y);
if(y>20) break;
} while(a=14);
A) a=12 y=12
B) a=12 y=12
a=14 y=16 a=16 y=28
a=16 y=20
a=18 y=24
C) a=12 y=12
D) a=12 y=12
a=14 y=26
a=14 y=44
26.t为int类型,进人下面的循环之前,t的值为0,则以下叙述中正确的是( B )。
while( t=l )
{……}
A) 循环控制表达式的值为0
B) 循环控制表达式的值为1
C) 循环控制表达式不合法
D) 以上说法都不对
27.有以下程序段
int k=0;
while(k=1) k++;
while循环执行的次数是( A )。
A) 无限次
B) 有语法错,不能执行
C) 一次也不执行
D) 执行1次
28.以下程序执行后sum的值是( C )。
main()
{ int i , sum;
for(i=1;i<6;i++) sum+=i;
printf("%d\n",sum);
}
A) 15
B) 14
C) 不确定
D) 0
29.有以下程序段
int x=3;
do
{ printf("%d",x-=2); }
while (!(--x));
其输出结果是( C )。
A) 1
B) 3 0
C) 1 -2
D) 死循环
30.若输入12、8,以下程序的输出结果是( A )。
main()
{int a,b,num1,num2,temp;
scanf(“%d,%d”,&num1,&num2);
if(num1>num2)
{temp=num1;
num1=num2;
num2=temp;
}
a=num1,b=num2;
while(b!=0)
{temp=a%b;
a=b;
b=temp;
}
printf(“%d, %d”,a,num1*num2/a);
}
A) 4,24
B) 3,24
C) 5,25
D) 4,25
31.以下程序的输出结果是( A )。
#include
#include
main()
{int s=1;
float n=1,pi=0;
double t=1;
while(fabs(t)>=2e-6)
{pi+=t;
n+=2;
s=-s;
t=s/n;
}
pi*=4;
printf(“pi=%.6f\n”,pi);
}
A) 3.141592
B) 1
C) 2e-6
D) 0
32.以下程序的输出结果是( B )。
main()
{int i,f1,f2;
f1=f2=1;
for(i=0;i<4;i++)
{printf(“%d %d ”,f1,f2);
f1+=f2;
f2+=f1;
}
}
A) 1 2 3 4 5 6 7 8
B) 1 1 2 3 5 8 13 21
C) 1 1 3 5 7 9 11 13
D) 1 3 5 7 9 11 13 15
33.下列叙述中,正确的一条是( B )。
A) 语句“goto 12;”是合法的
B) for(;;)语句相当于while(1)语句
C) if(表达式)语句中,表达式的类型只限于逻辑表达式
D) break语句可用于程序的任何地方,以终止程序的执行
34.以下程序的输出结果是( B )。
main()
{int a,b;
for(a=1,b=1;a<=100;a++)
{if(b>=20) break;
if(b%3==1)
{b+=3;
continue;
}
b-=5;
}
printf(“%d\n”,a);
}
A) 7
B) 8
C) 9
D) 10
35.以下的for循环( C )
for(x=0,y=0;(y!=123)&&(x<4);x++) ;
A) 是无限循环
B) 循环次数不定
C) 执行4次
D) 执行3次
36.C语言中( D )
A) 不能使用do-while语句构成的循环
B) do-while语句构成的循环必须用break语句才能退出
C) do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
D) do-while语句构成的循环,当while语句中的表达式值为零时结束循环
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |