c语言复习题Word格式.docx

上传人:b****7 文档编号:22587067 上传时间:2023-02-04 格式:DOCX 页数:33 大小:44.92KB
下载 相关 举报
c语言复习题Word格式.docx_第1页
第1页 / 共33页
c语言复习题Word格式.docx_第2页
第2页 / 共33页
c语言复习题Word格式.docx_第3页
第3页 / 共33页
c语言复习题Word格式.docx_第4页
第4页 / 共33页
c语言复习题Word格式.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

c语言复习题Word格式.docx

《c语言复习题Word格式.docx》由会员分享,可在线阅读,更多相关《c语言复习题Word格式.docx(33页珍藏版)》请在冰豆网上搜索。

c语言复习题Word格式.docx

10变量已正确定义,有以下程序段

inta=1,b=2,c=3;

if(a>

b)a=b;

c=a;

if(c!

=a)c=b;

%d,%d,%d\n"

a,b,c);

其输出结果是(B)。

A.程序段有语法错B.1,2,1C.1,2,2D.1,2,3

11有宏定义:

#definef(x)x*x,则表达式f(2+2)/f(1+1)的值为(B)。

A.2B.10C.3D.4

12C语言中while和do-while循环的主要区别是(a)。

A.do-while的循环体至少无条件执行一次

B.while的循环控制条件比do-while的循环控制条件严格

C.do-while允许从外部转到循环体内

D.do-while的循环体不能是复合语句

13在C程序中用做用户标识符的一组标识符是(A)。

A.and 

 

_2011 

B.Date 

y-m-d 

C.Hi 

Dr.Tom 

D.default 

Bigl

14设有程序段

intk=10;

while(k=0)k=k-1;

则下面叙述中正确的是(B)。

A.while循环执行10次C.循环是无限循环

B.循环体语句一次也不执行D.循环体语句执行一次

15函数调用语句func((exp1,exp2),(exp3,exp4,exp5));

含有实参的个数为(B)。

A.1B.2C.4D.5

16在C语言中,以下正确的描述是(B)。

A.函数的定义可以嵌套,但函数的调用不可以嵌套

B.函数的定义不可以嵌套,但函数的调用可以嵌套

C.函数的定义和函数的调用均不可以嵌套

D.函数的定义和函数的调用均可以嵌套

17以下对一维整型数组a的正确定义是(D)。

A.inta(10);

B.intn=10,a[n];

C.intn;

D.#defineN10

scanf("

%d"

&

n);

inta[N];

inta[n];

18下面是对字符数组s的初始化,其中不正确的是(A)。

A.chars[5]={"

HELLO"

};

B.chars[5]={'

H'

'

E'

L'

'

O'

C.chars[5]="

"

;

D.chars[]="

19下选项中,合法的一组C语言常量是(B)。

A.027 

.5e-3 

‘\\’B.12. 

“ABC” 

4.5e0 

C.4c1.5 

.177 

OabcD.0x8A 

10,000 

3.e5 

20断字符串a和b是否相等,应当使用(D)。

A.if(a==b)B.if(a=b)C.if(strcpy(a,b))D.if(strcmp(a,b))

21如下语句inta=10,b=20,*p1,*p2;

p1=&

a;

p2=&

b;

若要让p1也指向b,可选用的

赋值语句是(B)。

A.*p1=*p2;

B.p1=p2;

C.p1=*p2;

D.*p1=p2;

22计算表达式48%10/3的值是(D)。

A.1.25

B.1

C.1.0

D.2

23正确表示逻辑关系:

“a≥10或a≤0”的C语言表达式是(D)。

A.a>

=10ora<

=0

B.a>

=10|a<

C.a>

=10&

a<

D.a>

=10||a<

24有定义语句:

intx;

floaty;

,则正确的输入语句是(C)。

A.scanf("

%d%d"

x,y);

B.scanf("

x,&

y);

C.scanf("

%d%f"

D.scanf("

%f%d"

25.10十进制整数-1的补码表示为_____A_______。

(A)1111111111111111(B)1000000000000001

(C)0000000000000001(D)111111*********0

26下列常量中合法的是_____B________。

(A)1e4.0(B)0xabc(C)0128(D)∏

27.若有以下结构体定义,则下列哪项引用是正确的(A)。

structinfo

{ intm;

intn;

}v;

A.v.m=10;

v.n=20;

 B.v={10,20};

C.v=10,20;

D.v->

m=10;

v->

n=20;

28.设有定义语句:

charc1=7,c2=7;

则以下表达式中值为零的是(A)。

A.c1^c2 

B.c1&

c2 

C.~c2D.c1|c2

29定义intx;

正确的输入语句是_____C_____。

(A)scanf("

(B)scanf("

(C)scanf("

(D)scanf("

30.在C语言中,int型数据在内存中以(A)形式存放。

A.补码

B.BCD码 

C.反码 

D.原码

31.在C语言中,用关键字(A)定义无符号型变量。

A.unsigned

B.signed

C.sign 

D.unsign

32.有以下定义语句doublea,b;

intw;

longc;

若各变量已正确赋值,则下列选项中错误的表达式是(A)。

A.a=a+b=b++B.w%(int)(a+b)C.(c+w)%(int)aD.w=a==b

33.以下不正确的用户标识符是(C)。

A._char

B.Double 

C.*m 

D._0_

34.在C语言的if语句中,用作判断的表达式为(B)。

A.关系表达式B.逻辑表达式C.算术表达式D.任意表达式

35printf()函数的格式说明符中,要输出单个字符应使用说明符(D)。

A.%d

B.%f

C.%s

D.%c

36.下列语句序列是判别变量x、y的大小,若x<

y则交换它们的值,其中正确的是(C)。

A.if(x<

y){x=y;

y=z;

B.if(x<

y)x=y;

y=x;

C.if(x<

y){t=x;

x=y;

y=t;

}D.if(x<

y)t=x;

37.do-while语句的循环体(B)。

A.可能一次也不执行

B.至少要被执行一次

C.由循环条件决定循环次数

D.任意多次

38.在C语言中while语句与do-while语句的主要区别是(A)。

A.do-while的循环体至少无条件执行一次

B.do-while允许从外部转到循环体内

C.do-while的循环体不能是复合语句

D.while的循环控制条件比do-while的循环控制条件严格

39.以下不正确的数值常量是(C)。

A.0.23E1

B.2.3e-1 

C.1E3.6

D.2.3e0

40.C语言中主函数的个数是(A)。

A.1个

B.2个

C.6个

D.任意多个

41.下列函数定义中正确的是(D)。

A.doubleadd(doublex,y)

{returnx+y;

}

B.minus(doublex,doubley)

{returnx-y;

C.doublediv(doublex,doubley)

{returnx%y;

D.doublemultiply(doublex,doubley)

{returnx*y;

42.若有宏定义:

#definef(x)x*x,则表达式f(4+4)/f(2+2)的值为(D)。

A.3

B.4

C.16

D.28

43.若有定义inta,*b;

表达式(C)可以使指针b指向变量a。

A.b=&

a

B.b=a 

C.b=&

a

D.*b=&

44.若有定义:

int 

n1=0,n2,*p=&

n2,*q=&

n1;

以下赋值语句中与n2=n1;

语句等价的是(A)。

A.*p=*q;

B.p=q;

C.*p=&

D.p=*q;

45.以下对数组元素的初始化,错误的是(D)。

A.floatweight[5]={67.5,34};

B.floata[]={0};

C.inta[]={1,2,2};

D.inta[5]={};

46.若要定义a为3*4的二维数组,正确的定义语句是(B)。

A.floata(3,4);

B.floata[1+2][2+2];

C.floata(3)(4);

D.floata[3,4];

47.能正确判断字符串s1大于字符串s2的是(C)。

A.if(s1>

s2)B.if(strlen(s1)>

strlen(s2))

C.if(strcmp(sl,s2)>

0)D.if(strcmp(s1,s2)==0)

48.以下能正确定义一维数组的选项是(B)。

A.int 

a[5]={0,1,2,3,4,5};

B.int 

a[]={0,1,2,3,4,5};

C.int 

a[2+3]={};

D.int 

x=5,a[x]={0};

49.若要定义b为5*10的二维数组,正确的定义语句为(D)。

A.floatb(5,10)  B.floatb[5,10]

C.float[5][10]      D.floatb[5][10]

50.若有以下说明和语句,则输出结果是(C)。

charstr[]="

x:

\\abc.dat\"

%s"

str);

A.字符串中有非法字符B.\"

C."

\abc.dat"

D."

\\abc.dat"

51.表达式strcmp("

box"

,"

boss"

)的值是一个(A)。

A.正数

B.负数 

C.0

D.不确定的数

52.已知inta[]={1,2,3,4,5,6},*p=a+2;

则p[2]的值是(C)。

A.3 

B.4 

C.5

D.6

53.若有定义:

inta[8],*p;

则与p=a;

等价的语句是(A)。

A.p=&

a[0];

B.p=a[0];

C.p=*a;

D.*p=&

54.若有定义:

inti=10,j=20,*p=&

i,*q=&

j;

p=q;

则执行printf("

%d%d\n"

*p,*q);

的结果是(B)。

A.1020B.2020C.1010D.2010

55.有语句chars[]="

EGIK"

*p=s;

则printf("

%c"

*p+2);

的输出结果是(B)。

A.E

B.G

C.I 

D.K

56.C语言中可以处理的文件类型是(B)。

A.文本文件和数据文件

B.文本文件和二进制文件

C.数据文件和二进制文件

D.任何类型文件

57定义intx=10,y=20;

执行printf("

%d,"

x++);

--y);

的结果是______C_____。

(A)10,20(B)11,20(C)10,19(D)11,19

58执行intx=-1,y=-1,z=-1;

++x||++y&

++z;

printf("

%d%d%d\n"

x,y,z);

的结果是___C____。

(A)-1-1-1(B)0-1-1(C)00-1(D)000

59下列语句序列判别变量x、y大小,若x<

y则交换它们的值,其中正确的是_____C____。

(A)if(x<

}(B)if(x<

(C)if(x<

}(D)if(x<

60.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为(A)。

A.auto

B.static 

C.extern

D.register

61对于语句for(i=0;

;

i++)printf("

*"

);

可理解为_____A____________。

(A)条件恒为真(B)条件恒为假(C)错误表达式(D)该循环不会被执行

62下列程序段中,功能与其它程序段不同的是___C________。

(A)for(i=1,s=0;

i<

=10;

i++)s+=i;

(B)i=1;

s=0;

do{s+=i;

i++;

}while(i<

=10);

(C)for(i=1;

=5;

){s=1;

s+=i;

i++;

}(D)i=1;

while(i<

=10){s+=i;

63定义函数:

intadd(inta,intb){return(a+b);

}并将其放在调用语句之后,则在调用之前应该声明,以下选项中错误的声明是_____A____。

(A)intadd(inta,b);

(B)intadd(int,int);

(C)intadd(inta,intb);

(D)intadd(intx,inty);

64以下一维数组的定义正确的是____A_______。

(A)inta[10+20](B)intx=10,a[x];

(C)inta[5.0](D)inta[i=10]

65.有结构定义如下:

structstudent

{intstu_num;

charname[10];

charsex;

intscore;

}*p;

则用p对成员变量sex的引用正确的是(A)。

A.p->

sex

B.(*p)->

C.p.sex

D.(&

p)->

66下面对数组赋初值错误的是_____B______。

(A)inta[]={1,2,3,4}(B)inta[5]={0,1,2,3,4,5}

(C)inta[2][3]={1,2,3,4,5,6}(D)inta[2][3]={{1},{2}}

67以下能正确进行字符串赋值的是__D_______。

(A)char*sp;

*sp="

hello"

(B)chars[10];

s="

(C)chars[10];

*s="

(D)char*sp="

68能判断字符串s1是否与字符串s2相等的是_____D_____。

(A)if(s1=s2)(B)if(s1==s2)

(C)if(strcmp(sl,s2)=0)(D)if(strcmp(s1,s2)==0)

69定义intx;

经过下列____C____语句后,执行赋值语句*p=8;

可将x值置为8。

(A)intp=x;

(B)int*p=x;

(C)int*p=&

x;

(D)p=x;

70.若文本文件f1.txt中原有内容good,则运行以下程序后文件f1.txt中的内容为(C)。

main()

{FILE 

*fp1;

fp1=fopen("

f1.txt"

"

w"

fprintf(fp1,"

abc"

fclose(fp1);

A.goodabc

B.abcd

C.abc

D.abcgood

71定义FILE*fp;

以“只写”方式打开文件C:

\aa.dat的正确语句是___C___。

(A)fp=fopen("

C:

\aa.dat"

"

w"

(B)fp=fopen("

r"

(C)fp=fopen("

\\aa.dat"

(D)fp=fopen("

72以下选项中能作为合法常量的是____B________。

(A)1.234e4.0(B)'

(C)0128(D)'

VisualC++'

73C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符______C_____。

(A)必须为字母(B)必须为下划线

(C)必须为字母或下划线(D)可以是字母、数字和下划线中任一种字符

74以下选项中值为1的表达式是______B____。

(A)1-'

0'

(B)1-'

\0'

(C)'

1'

-0(D)'

-'

75设charch;

,表示ch是小写字母的表达式是___C_______。

(A)'

a'

≤ch≤'

z'

(B)'

<

=ch<

='

(C)ch>

andch<

(D)ch>

&

ch<

76下列关系表达式中结果为假的是__C_____。

(A)1!

=2(B)8<

=10(C)4>

3>

2(D)-1

77以下能正确地定义三个整型变量a,b和c,并赋初值为5的语句是____C____。

(A)inta=b=c=5;

(B)inta,b,c=5;

(C)inta=5,b=5,c=5;

(D)a=b=c=5;

78执行intx=0,y=0,z=0;

的结果是____B______。

(A)000(B)100(C)110(D)111

79下列条件语句中,功能与其他语句不同的是_____D______。

(A)if(a)printf("

elseprintf("

#"

(B)if(a==0)printf("

(C)if(a!

=0)printf("

(D)if(a==0)printf("

80若有以下说明和定义语句:

{intage;

charnum[8];

structstudentstu[3]={{20,"

200701"

},{21,"

200702"

},{19,"

200703"

}};

structstudent*p=stu;

引用结构体变量成员的表达式错误的是__D_____。

(A)(p++)->

num(B)p->

num(C)(*p).num(D)stu[3].age

81C语言中,数学表达式

,正确的表达方式是___D____。

(A)(ax*2+bx+c)/a*b(B)(ax*x+b*x+c)/ab

(C)(a*x*x+b*x+c)/a*b(D)(a*x*x+b*x+c)/a/b

82下列关系表达式中结果为真的是__D______。

=2>

1(B)4>

2(C)4&

0(D)4||0

83下列表达式中结果为假的是____C________。

=10(C)(a=2*2)==2(D)x=(1+1)==2

84定义charc1=92,c2=92;

则以下表达式中值为零的是____A_____。

(A)c1^c2(B)c1&

c2(C)~c2(D)c1|c2

85定义FILE*fp;

以“只读”方式打开文件C:

\aa.dat的正确语句是_____D____。

(B)fp=fopen("

(D)fp=fopen("

86.执行for(inti=1;

10&

i%2;

i++)printf("

将输出(A)个*号。

A.1

B.4 

D.10

87.C语言源程序要正确地运行,必须有(C)。

A.printf函数B.自定义的函数C.main函数D.空函数

88.有函数定义:

voidfun(intn,doublex){……},若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是(C

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1