荟萃馆

位置:首页 > IT认证 > 计算机等级

2016计算机二级c语言选择题题库及答案

1.下面被调用函数sub的函数值的类型是()

2016计算机二级c语言选择题题库及答案

sub(float a)

{float b;

b=a*a+1;

return b;}

A)单精度型 B)双精度型 C)空类型 D)整型

2.若有如下程序:

int sub()

{static int n=1;

int x=1;

x*=n;n++;

return x;}

main()

{int n,t=1;

for(n=1;n<6;n++)t*=sub();

printf("%dn",t);}

则程序运行后的输出结果是()

A)15 B)120 C)34560 D)-30976

3.在C语言中,函数的隐含存储类别是()

A)static B)auto C)extern D)register

4.有以下程序:

intf1(doublea)

{returna*a; }

intf2(doublex,doubley)

{doublea,b;

a=f1(x);

b=f1(y);

returna+b;

}

main()

{doublew;

w=f2(1.1,2.0);

}

变量w中的值是()

A)5.21 B)5 C)5.0 D)0.0

5.以下程序运行后,输出结果是()

#include

ss(char *s)

{char *p=s;

while(*p)p++;

return(p-s);

}

main()

{char*a="abded";

inti;

i=ss(a);

printf("%dn",i);

}

A)8 B)7 C)6 D)5

6.若有以下定义语句:

doublea[5];inti=0;

能正确给a数组元素输入数据的语句是()

A)scanf("%lf%lf%lf%lf%lf",a);

B)for(i=0;i<=5;i++)scanf("%lf",a+i);

C)while(i<5)scanf("%lf",&a[i++]);

D)while(i<5)scanf("%lf",a+i);

7.以下程序的输出结果是()

main()

{ charss[16]="testn"";

printf("%d,%dn",strlen(ss),sizeof(ss));

}

A)4,16 B)7,7 C)16,16 D)4,7

8.以下说法正确的是()

A)宏定义是C语句,所以要在行末加分号

B)可以使用#undef命令来终止宏定义的作用域

C)在进行宏定义时,宏定义不能层层置换

D)对程序中用双引号括起来的字符串内的.字符,与宏名相同的要进行置换

9.以下程序的输出结果是()

#include

main()

{struct stru{int a,b;

char c[6];

};

printf("%dn",sizeof(stru));

}

A)2 B)4 C)8 D)10

10.若有如下定义:

int s[3];

则下面表达式中不能代表数组元素s[1]的地址的是()

A)&s[1] B)&s[0]+1 C)s+1 D)s++

答案:1.D 2.B 3.C 4.C 5.D 6.C 7.A 8.B 9.D 10.D