现在的位置: 首页 > 14 二级C语言 > 正文

2009秋 C语言 选择题(10分)

2011年09月16日 14 二级C语言 ⁄ 共 849字 ⁄ 字号 暂无评论

在二级考试中,C语言的选择题占10分。

21.以下叙述中正确的是21
A.C语言系统以函数为单位编译源程序 B.main函数必须放在程序开始
C.用户定义的函数可以被一个或多个函数调用任意多次 D.在一个函数体内可以定义另外一个函数

22.以下选项中,不能用作c语言标识符的是 22
A.print B.FOR C.&a D._00

23.已知int类型数据在内存中存储长度为2个字节,以下语句中能正确输出整数32768的是 23
A.printf("%d",32768); B.printf("%ld",32768);
C.printf("%f",32768); D.printf("%c",32768);

24.已知有声明"int a=3,b=4,c=5;",以下表达式中值为0的是 24
A.a&&b B.a<=b C.a||b&&c D.!(!c||1) 25.已知有声明"long x,y;"且x中整数的十进制表示有n位数字(n>4 && n<10),若要求去掉整数x十进制表示中的最高位,用剩下的数字组成一个新的整数并保存到y中,则以下表达式中能正确实现这一功能的是 25 A.y=x/(10*(n-1)) B.y=x%(10*(n-1)) C.y=x%(long)pow(10,n-1) D.y=x%(10^(n-1)) 26.已知有声明"int x,y;",若要求编写一段程序实现"当x大于等于0时y取值1,否则Y取值-1",则以下程序段中错误的是___26___

  A.if(x>=0) y=1; else y=-1;    
  B.y=x>=0?1:-1;
  C. 
switch() {
case x>=0:
    y=1;     break;
default:
    y=-1;
}                 
 D.
switch(x-abs(x)) {
case 0:
    y=1;     break;
default:
    y=-1;
}

27.已知有声明"int m[]={5,4,3,2,1},i=0;",下列对m数组元素的引用中,错误是___27___
A.m[++i] B.m[5] C.m[2*2] D.m[m[4]]

28. 已知有声明"char s[80];",若需要将键盘输入的一个不含空格的字符串保存到组中,则下列语句中正确的是
A.scanf("%s",s); B.scanf("%s",s[0]); C.s=gets(); D.s=getchar();

29.若函数调用时的实参为变量,则以下关于函数形参和实参的叙述中正确的是 29
A.实参和其对应的形参占用同一存储单元 B.形参不占用存储单元
C.同名的实参和形参占用同一存储单元 D.形参和实参占用不同的存储单元

30.已知有声明"int i,a[10],*p=a;",现需要将1--l0保存到a[0]--a[9]中,以下程序段中不能实现这一功能的是 30

  A.for(i=0;i<10;i++) a[i]=i+1;            B.for(i=0;i<10;i++) p[i]=i+1;
  C.i=1;while(p<a+10)  *p++=i++;        D.i=1;while(p<a+10) *a++=i++;

21.C 22.C 23.B 24.D 25.C 26.C 27.B 28.A 29.D 30.D

抱歉!评论已关闭.