2013年计算机二级考试《C语言》课后模拟题及答案二

牛课网 考试宝典 更新时间:2024-05-19 01:47:22

计算机二级c语言 历年计算机二级c语言题库及答案 计算机二级历年真题c语言

  一、单项选择题
  1.下面四个选项中,均不是c语言关键字的选项是( A )。
  A) define IF Type     
  B) getc char printf
  C) include scanf case    
  D) while go pow
  2.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符(C)。
  A) 必须为字母        
  B) 必须为下划线
  C) 必须为字母或下划线    
  D) 可以是字母、数字和下划线中任一种字符
  3.下列四个选项中,均是C语言关键字的选项是( B )。
  A) auto enum include    
  B) switchtypedefcontinue
  C) signed union   scanf     
  D) ifstruct type
  4.下面四个选项中,均是不合法的用户标识符的选项是( C )。
  A) AP_0 do      
  B) floatla0_A
  C) b-agotoint    
  D) _123tempint
  5.以下有4组用户标识符,其中合法的一组是(C)。
  A) For-sub Case    
  B) 4dDO Size
  C) f2_G3IFabc     
  D) WORDvoiddefine
  6.下列选项中,合法的C语言关键字是( D )。
  A) VAR    
  B) cher    
  C) integer    
  D) default
  7.下面四个选项中,均是合法整型常量的选项是( A )。
  A) 160 -0xffff011    
  B) -0xcdf 01a0xe
  C) –01986012 0668    
  D) -0x48a 0x2e5 0xe
  8.下面四个选项中,均是正确的八进制数或十六进制数的选项是( C )。
  A) -100x8f-011    
  B) 0abc-017 0xc
  C) 010 -0x11 0xf1    
  D) 0a12-0x123 -0xa
  9.设C语言中,一个int型数据在内存中占2个字节,则unsigned int型数据的取值范围为( C )。
  A) 0~255    
  B) 0~32767    
  C) 0~65535    
  D) 0~2147483647
  10.在C语言中,不正确的int类型的常数是( A )。
  A)32768    
  B)0    
  C)037    
  D)0xAF(11101111=128+64+32+8+4+2+1)
  11.下面四个选项中,均是不合法的整型常量的选项是( D )。
  A) -0f1-0xffff 0011    
  B) -0xcdf01712456
  C) -018999 5e2 Www.KaO8.CC 
  D) -0x48eg-06803f
  12.下面四个选项中,均是不合法的浮点数的选项是( B )。
  A) 160.0.12 e3    
  B) 1232e4.2 .e5
  C) -.18123e40.0    
  D) -e3.234 1e3
  13.下面四个选项中,均是合法的浮点数的选项是( B )。
  A) +1e+1 5e-9.403e2    
  B) -.6012e-4-8e5
  C) 123e1.2e-.4+2e-1     
  D) -e3.8e-4 5.e-0
  14.下列变量定义中合法的是( A )。
  A) short _a=1-.le-1;    
  B) double b=1+5e2.5;
  C) long do=0xfdaL;     
  D) float 2_and=1-e-3;
  15. 以下选项中合法的字符常量是( B )。
  A) “B”    
  B) ‘\010’    
  C) 68    
  D) D
  16.以下选项中,非法的字符常量是( C )。
  A) '\t'    
  B) '\17'    
  C) "n"    
  D) '\xaa'
  17.以下所列的C语言常量中,错误的是( B )。
  A) 0xFF    
  B) 1.2e0.5    
  C) 2L    
  D) ‘\72’
  18.在C语言中,char型数据在内存中的存储形式是( D )。
  A) 补码    
  B) 反码    
  C) 原码    
  D) ASCII码
  19.下面四个选项中,均是合法转义字符的选项是( A )。
  A) ‘\’’ ‘\\’ ‘’      
  B) ‘\’ ‘\017’ ‘\”’
  C) ‘\018’ ‘\f’ ‘xab’    
  D) ‘\\0’ ‘\101’ ‘xlf’
  20.下面四个选项中,均是不合法的转义字符的选项是( B )。
  A) ‘\””’ ‘\\’ ‘\xf’    
  B) ‘\1011’ ‘\’ ‘\a’
  C) ‘\011’ ‘\f’ ‘\}’     
  D) ‘\abc’ ‘\101’ ‘xlf’[page]

  21.下面正确的字符常量是(C)。
  A) “c”    
  B) ‘\\’’    
  C) ‘W’    
  D) ‘’
  22.下面四个选项中,均是正确的数值常量或字符常量的选项是( D )。
  A) 0.00f8.9e ‘&’     
  B) ‘a’3.9e-2.51e1‘\’’
  C) ‘3’011 0xff000a    
  D) +001 0xabcd 2e250.
  23.下面不正确的字符串常量是(A)
  A) ‘abc’    
  B) ”1212”    
  C) ”0”    
  D) ” ”
  24.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为(A)。
  A) char  B) char=int  C) char  D) char=int=long int<=float  25.若有说明语句:char c='\72';则变量c( A )。
  A) 包含1个字符    
  B) 包含2个字符
  C) 包含3个字符    
  D) 说明不合法,c的值不确定
  26.设变量a是整型,f是实型,i是双精度型,则表达式10+a+i*f值的数据类型为( C )。
  A) int    
  B) float    
  C) double    
  D) 不确定
  27.表达式18/4*sqrt(4.0)/8值的数据类型为( C )。
  A) int    
  B) float    
  C) double    
  D) 不确定
  28.设有说明:char w; int x; float y; double z; 则表达式w*x+z-y值的数据类型为( D )。
  A) float    
  B) char    
  C) int    
  D) double
  29.以下选项中属于C语言的数据类型是( C )。
  A) 复数型    
  B) 逻辑型    
  C) 双精度型    
  D) 集合型
  30.以下程序的输出结果是( A)
  main()
  {
  char c=‘z';
  printf(“%c”,c-25);
  }
  A) a    
  B) Z    
  C) z-25    
  D) y

  31.若有定义:int a=7; float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值是( A )。
  A) 2.500000    
  B) 2.750000    
  C) 3.500000    
  D) 0.000000
  32.若有代数式3ae/bc,则不正确的c语言表达式是( C )。
  A) a/b/c*e*3    
  B) 3*a*e/b/c    
  C) 3*a*e/b*c    
  D) a*e/c/b*3
  33.设有 int x=11; 则表达式 (x++ * 1/3) 的值是( A )。
  A) 3    
  B) 4    
  C) 11    
  D) 12
  34.以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子x/yz的C语言表达式是( A )。
  A) x/y*z    
  B) x*(1/(y*z))    
  C) x/y*1/z    
  D) x/y/z
  35.C语言中运算对象必须是整型的运算符是( A )。
  A) %=    
  B) /    
  C) =    
  D) <=
  36.下列程序的输出结果是( C )。
  main()
  {
  double d=3.2; int x,y;
  x=1.2; y=(x+3.8)/5.0;
  printf("%d", d*y);
  }
  A) 3    
  B) 3.2    
  C) 0    
  D) 3.07
  37.若x,i,j和k都是int型变量,则计算下面表达式x=(i=4, j=16, k=32) 后,x的值为( C )。
  A) 4    
  B) 16    
  C) 32    
  D) 52
  38.假设所有变量均为整型,则表达式(a=2, b=5, b++, a+B)的值是( B )。
  A) 7
  B) 8    
  C) 6    
  D) 2
  39.假定x和y为double型,则表达式x=2, y=x+3/2的值是( D )。
  A) 3.500000    
  B) 3    
  C) 2.000000    
  D) 3.000000
  40.若以下变量均是整型,且num=sum=7;则计算表达式sum=num++, sum++, ++num后sum的值为( B )。
  A) 7    
  B) 8    
  C) 9    
  D) 10 [page]
  41.若有定义int k=7,x=12; ,则以下能使值为3的表达式是( D )。
  A) x%=(k%=5)     
  B) x%=(k-k%5)    
  C) x%=k-k%5    
  D) (x%=k)-(k%=5)
  42.设以下变量均为int类型,则值不等于7的表达式是( C )。
  A) (x=y=6,x+y,x+1)      
  B) (x=y=6,x+y,y+1)
  C) (x=6,x+1,y=6,x+y)     
  D) (y=6,y+1,x=y,x+1)
  43.下列程序执行后的输出结果是( A )。
  main()
  {
  int x=‘f’;
  printf(“%c”,‘A’+(x-‘a’+1));
  }
  A) G    
  B) H    
  C) I    
  D) J
  44.下列程序执行后的输出结果是( C )。
  main()
  { char x=0xFFFF; printf("%d ",x--); }
  A) –32767    
  B) FFFE    
  C) -1    
  D) –32768
  45.以下程序的输出结果是( D )。
  main()
  { int a=3;
  printf("%d",(a+=a-=a*a));
  }
  A) -6    
  B) 12    
  C) 0    
  D) –12
  46.若变量已正确定义并赋值,下面符合C语言语法的表达式是( B )。
  A) a:=b+1    
  B) a=b=c+2    
  C) int 18.5%3    
  D) a=a+7=c+b
  47.若有以下程序段,
  int c1=1, c2=2, c3;
  c3=1.0/c2*c1;
  则执行后,c3中的值是( A )。
  A) 0    
  B) 0.5    
  C) 1    
  D) 2
  48.有如下程序
  main( )
  { int y=3, x=3, z=1;
  printf(“%d %d”, (++x, y++), z+2);
  }
  运行该程序的输出结果是( D )。
  A) 3 4    
  B) 4 2    
  C) 4 3    
  D) 3 3
  49.已知大写字母A的ASCII码为65,以下程序的运行结果为( A )。
  #include
  main( )
  {
  char c1=‘A’,c2=‘Y’;
  printf(“%d,%d”,c1,c2);
  }
  A) 65,89    
  B) A,Y    
  C) 65,88    
  D) 65,90
  50.以下程序的输出结果是( D )。
  #include
  main()
  {
  int a=010,b=10;
  printf(“%d,%d”,a++,--B);
  }
  A) 10,10    
  B) 8,10    
  C) 10,9    
  D) 8,9
  51.以下程序的输出结果是( B )。
  main()
  {
  int a,b;
  a=100;b=200;
  printf(“%d”,(a,
  B));
  }
  A) 100    
  B) 200    
  C) 20000    
  D) 100=200
  52.执行语句 y=10;x=y++; 的结果是( C )。
  A) x=10,y=10    
  B) x=11,y=11    
  C) x=10,y=11    
  D) x=11,y=10
  53.在表示C语言的整型变量时,表示“无符号长整型”的符号是( D )。
  A) unsigned int    
  B) unsigned short
  C) long int      
  D) unsigned long
  54.在下列形式的常数中,C程序不允许出现的是( B )。
  A) .45    
  B) ±123    
  C) 25.6e-2    
  D) 4e3
  55.以下程序的输出结果是( C )。
  main()
  { float x=3.6;
  int i;
  i=(int)x;
  printf(“x=%f,i=%d”,x,i);
  }
  A) x=3.600000,i=4    
  B) x=3,i=3
  C) x=3.600000,i=3    
  D) x=3.000000,i=3.600000
  56.在C语言中,要求运算数必须是整型数据的运算符是( B )。
  A) /    
  B) %    
  C) !    
  D) <
  57.执行下列语句的结果是( C )。
  i=3;
  printf(“%d,”,++i);
  printf(“%d”,i++);
  A) 3,3    
  B) 3,4    
  C) 4,3    
  D) 4,4
  58.已知x=3, y=2,则表达式x*=y+8的值为( C )。
  A) 3    
  B) 2    
  C) 30    
  D) 14
  59.执行语句int i=65536; printf(“%d”,i); 的结果是( B )。
  A) 65536    
  B) 0    
  C) 有语法错误,无输出结果    
  D) -1
  60.在C语言中,不正确的int类型的常数是( A )。
  A) 32768    
  B) 0    
  C) 037    
  D) 0xAF
  61.C语言提供的合法关键字是( D )。
  A) swicth    
  B) chan    
  C) Case    
  D) default
  62.表示“在使用x之前,先使x的值加1”的正确方式是( A )。
  A) ++x    
  B) x++    
  C) +x    
  D) +x+
  63.设x的值为5,则表达式(++x)+(++x)+(++x)的值是( D )。
  A) 24    
  B) 20    
  C) 15    
  D) 21
  64.在C语言中,合法的字符常量是( B )。
  A) ‘\084’     
  B) ‘\x43’  (十六进制)   
  C) ‘ab’     
  D) “\0”
  65.若已定义x和y为double类型,则表达式:x=1, y=x+3/2的值是( C )。
  A) 1    
  B) 2    
  C) 2.0    
  D) 2.6
  66.若t为double类型,表达式t=1, t+5, t++的值是( D )。
  A) 1    
  B) 6.0    
  C) 2.0    
  D) 1.0
  67.若有以下定义和语句,则输出结果是( B )。
  char c1=‘b’,c2=‘e’;
  printf(“%d,%c”,c2-c1,c2-’a’+’A’);
  A) 2,M    
  B) 3,E
  C) 2,E    
  D) 输出项与对应的格式控制不一致,输出结果不确定
  68.设有如下的变量定义:
  int i=8,a,b;
  double x=1.42,y=5.2;
  则以下符合C语言语法的表达式是( A )。
  A) a+=a-=(b=4)*(a=3)    
  B) x%(-3)
  C) a=a*3=2         
  D) y=float(i)
  69.若有以下定义和语句:
  int u=010,v=0x10,w=10;
  printf(“%d,%d,%d”,u,v,w);()
  则输出结果是(A)。
  A) 8,16,10    
  B) 10,10,10    
  C) 8,8,10    
  D) 8,10,10[page]

  二、填空题
  1.若x和a均是int型变量,则计算表达式(1)后的x值为12,计算表达式(2)后的x值为 4
  (1) x=(a=4, 6*2)
  (2) x=a=4, 6*2
  2.若a是int型变量,则表达式(a=4*5, a*2), a+6的值为 26
  3.若b是int型变量,则表达式b=25/3%3的值为 2
  4.若s是int型变量,且s=6 则下面表达式s%2+(s+1)%2的值为 1
  5.若a,b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为6 ,b值为 4 ,c值为 2
  6.若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为 10,n的值为 6
  7.若有定义:int b=7;float a=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4的值为 5.5
  8.若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+
  B)/2+(int)x%(int)y的值为3.5
  9.若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b的值为 1
  10.若x和n均是整型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为0
  11.以下程序的输出结果是 0
  main()
  { unsigned short a=65536; int b;
  printf(“%d”,b=a);}
  12.请写出数学式a/bc的C语言表达式 a/(b*c)
  13.设a、b、c为整型数,且a=2、b=3、c=4,则执行完语句 a*=16+(b++)-(++c)后,a的值是 28

考试宝典安装说明

宝典适用于手机、电脑、平板,您可安装客户端或在浏览器使用。

电脑版

手机版

网页版

考试宝典咨询
服务热线

TEL:029-88699698