江苏二级C2009秋考试试题 江苏二级c 联系客服

发布时间 : 星期一 文章江苏二级C2009秋考试试题 江苏二级c更新完毕开始阅读9e15c6bff121dd36a32d8234

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

25.已知有声明\且x中整数的十进制表示有n位数字(4

掉整数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.已知有声明\若要求编写一段程序实现\当x大于等于0时y取值1,否则Y

取值-1\则以下程序段中错误的是___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;

} }

27.已知有声明\下列对m数组元素的引用中,错误

是___27___。

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

28?已知有声明\若需要将键盘输入的一个不含空格的字符串保存到

组中,则下列语句中正确的是28 。

A.scanf(\ B.scanf(\

C.s=gets(); D.s=getchar();

29.若函数调用时的实参为变量,则以下关于函数形参和实参的叙述中正确的是29

A.实参和其对应的形参占用同一存储单元

B.形参不占用存储单元

C.同名的实参和形参占用同一存储单元

D.形参和实参占用不同的存储单元 ,

30.已知有声明\现需要将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

二、填空题(将答案填写在答题纸的相应答题号内,每个答案只占一行,共30分)

●基本概念

1.C语言中有!、&&、||三个逻辑运算符,其中优先级高于算术运算符的是 (1) 。

2.若有声明\则执行语句\时输

出 (2) 。

3.数学表达式 所对应的C语言表达式为 (3) 。

4.若有以下声明:

char *p=\

则执行语句\时输出(4) 。

5.声明局部变量时若缺省存储类别,该变量的存储类别是(5) 。

●阅读程序

6.以下程序运行时输出到屏幕的结果是(6) 。

#include

void main()

{FILE *fp;

int k,n,a[6]={1,2,3,4,5,6};

fp=fopen(\ ’

fprintf(fp,\

fprintf(fp,\

fclose(fp);

fp=fopen(\

fscanf(fp,\

printf(\

fclose(fp);

}

7.以下程序运行时输出到屏幕的结果是 (7) 。

#include

void main()

{int i=1,m=0;

switch(i)

{ case 1:

case 2: m++;

case 3: m++;

}

printf(\

}‘

8.以下程序运行时输出到屏幕的结果中第一行是

(8) ,第二行是(9)。 #include

void fun(int a[],int b[],int *x)

{ int i,j=0;

for(i=0;a[i];i++)

{if(i%2==0)continue;

if(a[i]>10)

b[j++]=a[i];

}

*x=j;

}

void main()

{int a[10]={3,15,32,23,11,4,5,9},b[10];

int i=0,x=0;

fun(a,b,&x);

for(i=0:i

printf(\

printf(\

}

9.以下程序运行时输出到屏幕的结果是( 10 )

#include

int fun(int *x,int n)