江苏省计算机二级试题汇总

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

江苏省计算机二级试题汇总-----------------------作者:

-----------------------日期:

选择题

●综合

以下关于C源程序的叙述中正确的是(21)。C(10年秋21)

A.注释只能出现在程序的开始位置或语句后面

B.一行中不能写多条语句

C.一条语句可以分写在多行中

D.一个源程序只能保存在一个文件中

以下定义和声明中,语法均有错误的是__________。(09年春21)

①int _f(int x){} ② int f(int f){} ③ int 2x=1; ④ struct for{int x;};

A.②③ B.③④ C.①④ D.①②③④

●数据类型、运算符与表达式

已有声明“int x=5,y;float z=2;”,以下表达式语法正确的是(24)。D (10年秋24)

A.y=x%z

B.x>0?y=x:y=-x

C.y=x/2=z

D.y=x=z/2

已知字母A的ASCII码是65,字母a的ASCII码是97,变量c中存储了一个大写字母的编码。若要求将c中大写字母编码转换成对应小写字母编码,则以下表达式中不能实现该功能的是(25)。D (10年秋25)

A.c=tolower(c)

B.c=c+32

C.c=c-‘A’+’a’

D.c=(c+’A’)%26-‘a’

以下选项中,()是C语言的关键字(10年春 22)

A.printf

B.include

C.fun

D.default

已知有声明“int a=3,b=4,c;”,则执行语句“c=1/2*(a+b);”后,c的值为()(10年春23)

A.0

B.3

C.3.5

D.4

已知有声明“int a=3,b=4;”,下列表达式中合法的是()((10年春 25)

A.a+b=7

B.a=∣b∣

C.a=b=0

D.(a++)++

已知有声明“int n;float x,y;”,则执行语句“y=n=x=3.89;”后,y的值为()(10年春 28)

A.3

B.3.0

C.3.89

D.4.0

以下选项中,不能用作C语言标识符的是()(09年秋22)

A.print B.FOR C.&a D._00

已知有声明”long x,y;”且x中整数的十进制表示有n位数字(4

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))

●顺序结构

以下语句中有语法错误的是(23)。B(10年秋23)

A.printf("%d",0xAB);

B.printf("%f",3.45E2.5);

C.printf("%d",037);

D.printf("%5c",'\\');

已知int类型数据在内存中存储长度为2个字节,以下语句中能正确输出整数32768的是()(09年秋23)

A.p rintf(“%d”,32768); B.printf(“%ld”,32768);

C. printf(“%f ”,32768); D.printf(“%c ”,32768);

以下语句中有语法错误的是__________。(09年24)

A.printf("%d",0e); B.printf("%f",0e2);

C.printf("%d",0x2); D.printf("%s","0x2");

●选择结构

一元二次方程ax2+bx+c=0有两个相异实根的条件是a≠0且b2-4ac>0,以下选项中能正确表示该条件的C语言表达式(26)。C (10年秋 26)

A.a!=0,b*b-4*a*c>0

B.a!=0||b*b-4*a*c>0

C.a&&b*b-4*a*c>0

D.!a&&b*b-4*a*c>0

已知有声明”int a=3,b=4,c=5;”,以下表达式中值为0的是()(09年秋24)

A.a&&b B.a<=b C.a||b&&c D.!(!c||1)

已知有声明“int a=12,b=15,c;”,则执行表达式“c=(a||(b-=a))”后,变量b和c的值

分别为()(10年春 29)

B. A.3 , 1 B.15 , 12 C.15 , 1 D.3 , 12

已知有声明”long x,y;”,若要求编写一段程序实现“当x大于等于0时y取值1,否则

y取值-1”,则以下程序段中错误的是()(09年秋26)

A.if(x>=0)y=1;else y=-1; B.y=x>=0? 1:-1;

C.switch() D.switch(x-abs(x))

{ case x>=0:y=1; break; { case 0:y=1; break;

default: y=-1; default: y=-1;

} }

1 x>0

以下选项中,不能表示函数sign(x)= 0 x=0 功能的表达式是__________。(09

年春23)

-1 x<0

A.s=(x>0)?1:(x<0)?-1:0 B.s= x<0 ? -1:(x>0? 1:0)

C.s= x<=0? -1:(x==0? 0:1) D.s= x>0?1: x==0? 0: -1

●循环结构

以下关于break和continue语句的叙述中正确的是(27)。B (10年秋27)

A.break和continue语句都可以出现在switch语句中

B.break和continue语句都可以出现在循环语句的循环体中

C.在循环语句和switch语句之外允许出现break和continue语句

D.执行循环语句中的break和continue语句都将立即终止循环

●数组

已知有声明“char s[20]=”hello”;”,在程序运行过程中,若要想使数组s中的内容修

改为”Good”,则以下语句中能够实现此功能的是()(10年春 26)

A.s=”Good’;

B.s[20]=”Good”;

C.strcat(s,”Good”);

D.strcpy(s,”Good”);

已知有声明”int m[]={5,4,3,2,1}, i=0;”,下列对m数组元素的引用中,错误的是()(09年秋27)

A.m[++i] B.m[5] C.m[2*2] D.m[m[4]]

已知有声明”char s[80];”,若需要将键盘输入的一个不含空格的字符串保存到s数组中,则下列语句中正确的是()(09年秋28)

A.scanf(“%s”,s); B.scanf(“%s”, s[0]); C.s=gets();

D.s=getchar();

设有声明“int p[10]={1,2},i=0;”,以下语句中与“p[i]=p[i+1],i++;”等价的是

__________。(09年春27)

A.p[i]=p[i++]; B.p[++i]=p[i];

C.p[++i]=p[i+1]; D.i++, p[i-1]=p[i];

相关文档
最新文档