2010上半年等考二级C语言笔试精选试题(6)

全国等级考试资料网 2022-07-25 02:56:02 190
 1.下面叙述正确的是()

A)define和auto都不能定义为用户标识符

B)可以把define和auto定义为用户标识符

C)可以把define定义为用户标识符,但auto是C语言的关键字

D)可以把auto定义为用户标识符,但define是C语言的关键字

2.以下的for循环()

for(x=0,y=0;(y!=123)&&(x<4);x++)

A)是无限循环 B)循环次数不定 C)执行4次 D)执行3次

3.下述对C语言字符数组的描述中错误的是()

A)字符数组可以存放字符串

B)字符数组中的字符串可以整体输入、输出

C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

D)不可以用关系运算符对字符数组中的字符串进行比较

4.设有定义:int a,*p=&a,**pp=&p;,则与a=100;等价的语句为()

A)**p=100; B)**pp=100; C)&*p=100; D)*pp=10;

5.有以下程序

int x=3;

do {printf("%d",x-=2);}while(!(--x));

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

A)1 B)30 C)1-2 D)死循环

6.执行下面程序的正确结果是()

main()中 华 考 试 网

{ float a=1.9;

switch(a)

{ case 0∶printf("0000");

case 1∶printf("1111");

case 2∶printf("3333");

}

printf("%f",a);

}

A)1.900000 B)111133331.900000 C)33331.900000 D)00001111233331.900000

7.对下述程序,正确的判断是()

main ()

{ int a, b;

scanf("%d,%d",&a,&b);

if(a>b)a=b;b=a;

else a++;b++;

printf("%d,%d",a,b);}

A)有语法错误不能通过编译 B)若输入4,5则输出5,6 C)若输入5,4则输出4,5 D)若输入5,4则输出5,5

8.若有如下程序:

sub(int n)

{intt;

if(n==1)returnt=5;

else t=sub(n-1)+3;

returnt;}

main()

{printf("%d ",sub(5));}

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

A)17 B)18 C)19 D)20

9.下面各被调用函数首部书写正确的是()

A)void sub(float x;float y);

B)void sub(float x,y)

C)void sub(float x,float y)

D)void sub(float x,float y);

10.设有如下程序:

#include"string.h"

main()

{static char s1[20],s2[20];

scanf("%s",s1);scanf("%s",s2);

if(strcmp(s1,s2))printf("@");

elseprintf("$");

printf("%d ",strlen(strcat(s1,s2)));}

如果从键盘上输入name<回车>name1<回车>,则程序运行后的输出结果是()

A)$8 B)@10 C)$9 D)@9

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

相关资料

相关阅读