main ( )
{ int a=3, b=4, c;  c=F(a+b);  printf (″%d\\n″, c); } 11.执行下面程序后的输出结果是____________。  #include 
{ int x=20; printf(\12.执行下面程序后的输出结果是____________。 #define M 2<3 ? 5:6 main( )
13.执行下面程序后的输出结果是____________。 main()
14.设从键盘输入:420<回车>,执行下面程序后的输出结果是____________。 main( ) { char c;
while ((c=getchar( ) )!=′\\n′) switch(c-′0′) { case 0:
case 1:putchar(c+2); case 2:putchar(c+3);break; case 3:putchar(c+4); default:putchar(c+1);break; }
printf(″\\n″); }
第三章选择结构 一、选择题
1.以下是if语句的基本形式: if(表达式) 语句; 其中\表达式\A.必须是逻辑表达式 B.必须是关系表达式
C.必须是逻辑表达式或关系表达式 D.可以是任意合法的表达式 2.switch(表达式) 语句中的“表达式”允许的类型是( ) A.float, int B.float, int, char C.int, char D.char, double 3.设int n, p=0;与语句if(n!=0)p=1;等价的是( )
A.if(n)p=1; B.if(n=1)p=l; C.if(n!=1)p=1; D.if(!n)p=l; 4.正确的条件语句为( ) A.if((a=b;)>0)t=a; B.if((a=b)>0)then t=a; C.if(a>b)t=a; D.if(a
{int i=3, j, k; j=i+M; k=i+(M); printf (\
{ float x=3.6; int i; i=x; printf(\,x,i);}
5.以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是( ) A.if((a>b)&&(b>c)) k=1; B.if((a>b)||(b>c)) k=1; else k=0; else k=0; C.if(a<=b) k=0; D.if(a>b) k=1
else if(b<=c) k=1; else if(b>c) k=1; else k=0;
6.以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是( )
A.switch(a) B.switch(a)
{case 1:a=b;break; {default:a++;break; default : a++;} case 1:a=b; } C.switch(a==1) D.switch(a==1)
{case 0:a=b;break; {case 1:a=b;break; case 1:a++;} case 0:a++;}
7.有如下嵌套的if语句, 以下选项中与上述if语句等价的语句是( ) if(a
     if(a      if(b A.k=(ac)?b:c);  C.k=(a A.if(a>b) c=a,a=b,b=c;                B.if(a>b) {c=a,a=b,b=c;} C.if(a>b) c=a;a=b;b=c;                D.if(a>b) {c=a;a=b;b=c;} 9.有以下程序运行后的输出结果是(      ) main()     { int a=1,b=2,c=3,d=0;     if (a==1 && b++==2)      if(b!=2||c--!=3) printf(\       else printf(\    else printf(\ A.1,2,3           B.1,3,2           C.1,3,3             D.3,2,1 10.main()  { int x;  scanf(\if(x<=3);    else  if(x!=10)   printf(\ 程序运行时,输入的值在(       )范围才会有输出结果。  A.不等于10的整数                      B.大于3且不等10的整数    C.大于3或等于10的整数                D.小于3的整数 11.以下程序的运行结果是(       )  #include  { int x=1,y=2,z=3;     if(x>y)          if(y A.331              B.41                C.2                 D.1 二、填空题  1.语句if(!k)a=3;中!k与__________________等价。  2.在执行循环结构或switch结构时,能够立即退出该结构的语句是__________。 3.以下程序的运行结果是                 。 main()  { int x=1,a=0,b=0; switch(x)  { case 0: a++; break; case l: b++;  case 2: a++; b++; break; case 3: a++; b++;}  printf(″a=%d,b=%d\\n″,a,b);} 4.以下程序的运行结果是                  。 main()  { int i=11, j;  j=i%3; switch (j) { case 1:  case 2:  printf(″%d\\n″,j); break; default:  printf(″%d\\n″,i);}} 5.以下程序的运行结果是               。 #include  { int a=1,b=2,c=3,d=0; if(a==1)  if(b!=2) if(c==3)  d=1; else     d=2; else if(c!=3) d=3; else   d=4; else   d=5; printf(\ 6.以下程序的运行结果是               。 main()      {int a=1,b=2,c=3;      if(a<=c)          if(b==c)  printf(〞a=%d\\n〞,a);         else  printf(〞b=%d\\n〞,b);       printf(〞c=%d\\n〞,c); }  7.以下程序的运行结果是              。 main ( )  { int x=15, y=21, z=0; switch (x%3)  {case 0: z++; break; case 1: z++; switch (y%2)                       {default: z++; case 0: z++; break; } }    printf (″%d\\n″, z);}  8.以下程序的运行结果是              。 main( )    { int a=10,b=20,c=30;       if(a>b) if(a>c) printf(″a=%d\\n″,a);              else printf(″b=%d\\n″,b);      print(″c=%d\\n″,c);}  9.以下程序的运行结果是               。  main() { int color=2; switch(color)  {case l:printf(“red\\n”);break; case 2:printf(“yellow\\n”); case 3:printf(“blue\\n”);}}  10.输入一个学生的成绩(在0~100分之间,超出此范围显示错),进行五级评分并显示。   main ( )   { int score;     scanf ("%d",&score);  printf ("%d->",score); if(__________________)         switch (___________________)   {case 9:case 10: printf (" Excellent \\ n");break; case 8: printf ("Good \\ n");break; case 7: printf ("Middle \\ n"); break; case 6: printf ("Pass \\ n");_______________; default: printf ("No pass \\ n");}   else printf ("Input error! \\ n");}    第四章循环结构 一、选择题  1.下列叙述正确的是(      )  A.continue语句的作用是跳出循环体             B.while循环语句的循环体至少执行一次 C.do-while循环语句的循环体至少执行一次  D.switch语句中的每个case语句组必须含有break语句 2.if(表达式)和while(表达式)中的“表达式”(       )  A.只能是逻辑的   B.只能是关系的   C.只能是算术的   D.以上三种都可以 3.对循环结构正确的叙述是(      )  A.do-while循环体可能被执行0次      B.do-while循环体至少被执行1次 C.while循环体不可能被执行0次       D.for循环体不可能被执行无限次 4.设int i=l, k=2;则错误的循环语句是(      ) A.for(i=0,k=-1;i++,k++);           B.for(;k-1;i++); C.for(i=1,k=4;k--;i++);           D.for(;k--;);