第1章:C语言基础
**5 **4##5 C)##3**4 D)**3##4 **5 ##5 7、执行下面程序片段的结果是(D)。
#include
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)1
8、有以下程序,若运行时输入3.6 2.4<回
车>,则输出的结果是( )。 #include
31
第1章:C语言基础
#include
{float x,y,z;
scanf(“%f%f”,&x,&y); z=x/y; while(1) {
if(fabs(z)>1.0) { x=y; y=z; z=x/y; } else break; }
printf(“%f\\n”,y);} A)1.500000 B)1.600000 C)2.000000 D)2.400000
9、运行以下程序,如果从键盘上输入
china#<回车>,则输出结果是(C)。 A)2,0 B)5,0 C)5,5 D)2,5
#include
32
第1章:C语言基础
main()
{int v1=0,v2=0; char ch;
while((ch=getchar())!=?#?) switch(ch) {case ?a?:; case ?h?:;
default:;v1++; case ?o?:;v2++; }
print(“%d,%d\\n”,v1,v2); }
10、有以下程序,执行后输出的结果是
(A)。 main()
{ int i=0,s=0; do{
if(i%2){i++;continue;} i++; s+=i; }
while(i<7);
printf(\}
33
第1章:C语言基础
A) 16 B) 12 C) 28 D) 21 11、以下程序的输出结果是(B)。
#include
{ int i=0,a=0; while(i<20) { for(;;)
{ if((i)==0) break; else i--; }
i+=11; a+=i; }
printh(\ }
A) 21 B) 32 C) 33 D) 11
12、有以下程序,执行后输出的结果是
(A)。 main() { int i;
for(i=0;i<3;i++) switch(i)
{ case 1: printf(\ case 2: printf(\ default: printf(\
34
第1章:C语言基础
} }
A) 011122 B) 012 C) 012020 D) 120 13、有以下程序,若要使程序的输出值为
2,则应该从键盘给n输入的值是(B)。 main()
{ int s=0,a=1,n; scanf(\ do
{ s+=1; a=a-2; } while(a!=n);
printf(\ }
A)-1 B)-3 C)-5 D)0 二、填空题
1、以下程序的输出结果是5 。 main() {int s,i;
for(s=0,i=1;i<3;i++,s+=i); printf(\ }
2、阅读下面程序,程序的结果是2,1,0 。 main() {int i=7;
35