以下选项中关于C语言常量的叙述错误的是()。
         
                         所谓常量,是指在程序运行过程中,其值不能被改变的量    
       
                         常量分为整型常量、实型常量、字符常量和字符串常量    
       
                         常量可分为数值型常量和非数值常量    
       
                         经常被使用的变量可以定义成常量    
      
 
若有定义语句:“int x=10;”,则表达式x-=x+x的值为( )。
 
有以下程序 
 #include<stdio.h> 
    int fun() 
   { static int x=1; 
   x*=2; 
   return x: 
   } 
   main( ) 
   { int i,s=1; 
   for(i=1;i<=3;i++)s*=fun(); 
   printf("%d\n",s); 
   } 
   程序运行后的输出结果是( )。 
 
 
若有定义语句:“int a=3,b=2,c=1;”,以下选项中错误的赋值表达式是( )。
         
                         a=(b=4)=3;    
       
                         a=b=c+1;    
       
                         a=(b=4)+c;    
       
                         a=1+(b=c=4);    
      
 
若函数中有定义语句:“int k;”,则
         
                         系统将自动给k赋初值0    
       
                         这时k中的值无定义    
       
                         系统将自动给k赋初值-1    
       
                         这时k中无任何值    
      
 
有以下程序 
 #include <stdio.h> 
   main() 
   { int a=1,b=0; 
   if(!a)b++; 
   else if (a==0)if(a) b+=2; 
   else b+=3; 
   printf("%d\n",b); 
   } 
   程序运行后的输出结果是( )。 
 
 
有以下程序 
 #include<stdio.h> 
    main() 
   { char c1,c2; 
   c1='A'+'8'-'4'; 
   c2='A'+'8'-'5'; 
   printf("%C,%d\n",c1,c2); 
   } 
   已知字母A的ASCII码为65,程序运行后的输出结果是( )。 
 
 
有如下嵌套的if语句 
 if(a<b) 
   if(a<c)k=a; 
   else k=c; 
   elseif(b<c)k=b; 
   else k=c; 
   以下选项中与上述if语句等价的语句是()。 
 
         
                         k=(ab)?a﹕b;k=(bc)?b﹕c;    
       
                         k=(ab)?((bc)?a﹕b):((bc)?b﹕c);    
       
                         k=(ab)?((ac)?a﹕c):((bc)?b﹕c);    
       
                         k=(ab)?a:b;k=(ac)?a:c;    
      
 
下列叙述中正确的是()。
         
                         可以用关系运算符比较字符串的大小    
       
                         空字符串不占用内存,其内存空间大小是0    
       
                         两个连续的单引号是合法的字符常量    
       
                         两个连续的双引号是合法的字符串常量    
      
 
有以下程序#include  
 main() 
   { int a; 
   scanf("%d",&a);if(a++<9)printf("%d\n",a);else printf("%d\n",a--); 
   } 
   程序运行时从键盘输入9<回车>,则输出结果是()。 
 
 
下面的函数调用语句中func( )函数的实参个数是( )。func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8)));
 
以下选项中表示一个合法的常量是()。(说明:符号□表示空格)
 
设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是()。
         
                         x++;printf(“%d\n”,x);    
       
                         n=++x;printf(“%d\n”,n);    
       
                         ++x;printf(“%d\n”,x);    
       
                         n=x++;printf(“%d\n”,n);    
      
 
有以下定义:“int a;long b;double x,y;”,则以下选项中正确的表达式是( )。
         
                         a%(int)(x-y)    
       
                         a=x!=y;    
       
                         (a*y)%b    
       
                         y=x+y=x    
      
 
若有表达式(w)?(--x):(++y),则其中与w等价的表达式是( )。
 
若a是数值类型,则逻辑表达式(a==1)‖(a!=1)的值是( )。
 
若有定义:“int a,b;”,通过语句“scanf(“%d;%d”,&a,&b);”,能把整数3赋给变量a,5赋给变量b的输人数据是()。
 
设变量已正确定义并赋值,以下正确的表达式是()。
         
                         x=y*5=x+z    
       
                         int(15.8%5)    
       
                         x=y+z+5,++y    
       
                         x=25%5.0    
      
 
若有定义语句“int a,b;double x;”则下列选项中没有错误的是( )。
         
                         switch(x%2){case 0﹕a++;break;case1﹕b++;break;default﹕a++;b++;}    
       
                         switch((int)x/2.0){case 0﹕a++;break;case 1﹕b++;break;default﹕a++;b++;}    
       
                         switch((int)x%2){case 0﹕ a++;break;case 1﹕b++;break;default﹕a++;b++;}    
       
                         switch((int)(x)%2){case 0﹕a++;break;case 1.0﹕b++;break;default﹕a++;b++;}    
      
 
关于C语言中数的表示,以下叙述中正确的是()。
         
                         只有整型数在允许范围内能精确无误的表示,实型数会有误差    
       
                         只要在允许范围内整型数和实型数都能精确的表示    
       
                         只有实型数在允许范围内能精确无误的表示,整形数会有误差    
       
                         只有用八进制表示的数才不会有误差    
      
 
有以下程序(strcat函数用以连接两个字符串)#include   main(){ char a[20]="ABCD\0'EFG\0'",b[]="IJK";strcat(a,b);printf"%s\n",a);}程序运行后的输出结果是( )。
         
                         ABCDE\0FG'\0IJK    
       
                         ABCDIJK    
       
                         IJK    
       
                         EFGIJK    
      
 
有以下程序 
 #include <stdio.h> 
   main() 
   { int n=2,k=0; 
   while(k++&&n++>2); 
   printf("%d%d\n",k,n); 
   } 
   程序运行后的输出结果是( )。 
 
 
有以下程序#include   main(){ int s,t,A=10;double B=6;s=sizeof(A);t=sizeof(B);printf("%d,%d\n",s,t);}在VC6平台上编译运行,程序运行后的输出结果是( )。
 
有以下程序 
 #include <stdio.h> 
 main() 
   { char x[]="STRING";x[0]=0; 
   x[1]='\0'; 
   x[2]='0'; 
   printf(“%d%d\n”,sizeof(x),strlen(x)); 
   } 
   程序运行后的输出结果是( )。 
   
 
有以下程序: 
 #include <stdio.h> 
   int fun () 
   { static int x=1; 
   x*=2; 
    return x; 
   } 
   main() 
   { int i,s=1; 
   for(i=1;i<=2;i++)s=fun(); 
   printf{"%d\n",s}; 
   } 
   程序运行后的输出结果是( )。 
 
 
设有定义:“int a=1,b=2,c=3;”,以下语句中执行效果与其他三个不同的是( )。
         
                         if(a> b)c=a,a=b,b=c;    
       
                         if(a> b){c=a,a=b,b=c;}    
       
                         if(a> b)c=a;a=b;b=c;    
       
                         if(a> b){c=a;a=b;b=c;}    
      
 
执行下列程序后,w的值为( )。 
 int w='A',x=14,y=15;w=((x‖y)&&(w<'a')); 
 
 
有以下程序 
 #include <stdio.h> 
 main() 
   { char s[]="rstuv";printf(“%c\n”,*s+2); 
   } 
   程序运行后的输出结果是( )。 
   
 
下列选项中正确的定义语句是( )。
         
                         double a;b;    
       
                         double a=b=7;    
       
                         double a=7,b=7;    
       
                         double, a,b;