一、选择题
1 下列运算符中优先级最低的是:
A)?: B)&& c)+ D) !=
2 请阅读以下程序:
main()
{int a=5,b=0,c=0;
if(a=b+c) printf(\e1se printf(\ 以上程序 :
A)有语法错不能通过编译 B)可以通过编译但不能通过连接 C)输出*** D)输出$$$
3 以下程序的运行结果是 :
main() {int m=5;
if(m++> 5) printf(\ e1se printf(\ A)4 B)5 C)6 D)7
4 当a=1,b=3,c=5,d=4 ,执行完下面一段程序后x 的值是 : if(a
       if(c        if(b       A)1    B)2      C)3      D)6    5 以下程序的输出结果是:    main()    {int  a=100,x =10,y=20,okl=5,ok2=0;     if  (x      if(ok2)  a=10;       a=-1;      printf(\   A)  1      B)  0    C)-1    D)值不确定    6 以下程序的输出结果是:   main()  {int  x= 2,y=-1,z=2; if (x   if(y<0)  z= 0;   else    z+ =1;   printf(\  A)3      B )2       C)1      D) 0     7 为了避免在嵌套的条件语句If一else中产生二义性,C语言规定else子句总是与(  )配对。      A)缩排位置相同的if     B)其之前最近的if     C) 之后最近的if        D)同一行上的if     8 请阅读以下程序:  #include  {float  a,b scanf(\if (a<0.0) b=0.0;  else if((a<0.5) &&(a!=2.0))  b= 1.0/(a+2.0); else  if(a<10.0)  b= 1.0/x ; else  b=10.0;  printf(\ 若运行时输入2.0(回车),则上面程序的输出结果是:  A)0.000000   B)0.500000  C)  1. 000000   D) 0.250000    9 若有条件表达式(exp) ?  a++:b--,则以下表达式中能完全等价于表达式(exp)的是:  A)  (exp==0)        B)  (exp!=0) C)  (exp==1)        D)  (exp!=1)        10 若运行时给变量x 输入12,则以下程序的运行结果是:  main()  {int  x,y;    scanf(\ y=x>12 ? x+10:x-12;  printf(\ A)0    B)22   C)12    D)10 11 以下程序的运行结果是:       main()'        {int  k= 4,a=3,b=2,c=1;          printf(\    A)4      B )3     C)2      D)1    12 执行以下程序段后,变量a,b,c的值分别是:     int  x=10,y=9;     int  a,b,c;      a =(--x==y++)?--x:++y ;     b = x++;     c = y;      A)a=9,b=9,c= 9       B )a=8,b=8,c=10     C)a=9,b=10,c=9       D)a=1,b=11,c=10    13 若w,x,y,z,m均为int型变量,则执行下面语句后的m值是:     w= 1;x = 2;y= 3;z=4;     m=(w     A)1   B )2     C)3     D)4    14 若w=1,x=2,y=3,z=4,则条件表达式w 15 执行以下程序段后的输出结果是     int  w=3,  z=7,x =10;      printf(\    printf(\    printf(\    printf(\     A)0       B)   1       C)0      D) 0 16 以下不正确的if语句形式是:        A)if(x>y && x!=y);                                 B)if(x= =y)  x+=y;         C)if(x != y) scanf(\ D)if(x   B)  if  (x= y) &&(x! = 0)  x+= y;    C)  if(x!= y)scanf(\ D) if(x< y){x++ ;y++;} 二、填空题  1 以下程序运行结果是          。      main()     {int a=2,b=3,c;     c=a;      if(a>b) c=1;      else if (a==b) c=0;     else c=-1;      printf(”%d\\n”,c); }   2 若a=1,b=2,则表达式a>b?a:b+1的值是              。    3 若a=1,b=2,c=3,d=4,则表达式a>b?a:c>d?c:d的值是          。    4 设有变量定义:int a=10,c=9;      则表达式 (--a!=c++)?—a:++c的值是                 。   5 若有说明语句:int x=1,y=0;则表达式x>(y+x)?10:12.5>y++?’a’:      ’A’的值是【97或'a'】。   作业六  循环结构  一、选择题  1下面程序的运行结果是(  ).  #include   {int num=0; while(num<=2) {num++;  printf(“%d\\n”,num); } } A)1 B)1  2 C)1 2 3 D)1 2 3 4    2 有以下程序段     int  x=0,s=0;      while  (!x!= 0)  s+=++x;  printf(\则  A)运行程序段后输出0             B)运行程序段后输出1 C)程序段中的控制表达式是非法的   D)程序段执行无限次    3 语句while(!E)中的表达式!E等价于:  A)  E==0   B)  E!=1  C)  E!=0    D)  E==1    4 下面程序段的运行结果是:     a=1;b= 2;c=2;  while(a