c语言单选301题包括答案.docx

上传人:b****8 文档编号:12794386 上传时间:2023-06-08 格式:DOCX 页数:124 大小:47.08KB
下载 相关 举报
c语言单选301题包括答案.docx_第1页
第1页 / 共124页
c语言单选301题包括答案.docx_第2页
第2页 / 共124页
c语言单选301题包括答案.docx_第3页
第3页 / 共124页
c语言单选301题包括答案.docx_第4页
第4页 / 共124页
c语言单选301题包括答案.docx_第5页
第5页 / 共124页
c语言单选301题包括答案.docx_第6页
第6页 / 共124页
c语言单选301题包括答案.docx_第7页
第7页 / 共124页
c语言单选301题包括答案.docx_第8页
第8页 / 共124页
c语言单选301题包括答案.docx_第9页
第9页 / 共124页
c语言单选301题包括答案.docx_第10页
第10页 / 共124页
c语言单选301题包括答案.docx_第11页
第11页 / 共124页
c语言单选301题包括答案.docx_第12页
第12页 / 共124页
c语言单选301题包括答案.docx_第13页
第13页 / 共124页
c语言单选301题包括答案.docx_第14页
第14页 / 共124页
c语言单选301题包括答案.docx_第15页
第15页 / 共124页
c语言单选301题包括答案.docx_第16页
第16页 / 共124页
c语言单选301题包括答案.docx_第17页
第17页 / 共124页
c语言单选301题包括答案.docx_第18页
第18页 / 共124页
c语言单选301题包括答案.docx_第19页
第19页 / 共124页
c语言单选301题包括答案.docx_第20页
第20页 / 共124页
亲,该文档总共124页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

c语言单选301题包括答案.docx

《c语言单选301题包括答案.docx》由会员分享,可在线阅读,更多相关《c语言单选301题包括答案.docx(124页珍藏版)》请在冰点文库上搜索。

c语言单选301题包括答案.docx

c语言单选301题包括答案

编号

试题内容

可选答案A

可选答案B

可选答案C

可选答案D

1

下列能正确定义且赋初值的语句是(B)。

intnl=n2=10;

charc=32;

floatf=f+1.1;

doublex=12.3E2.5;

2

设有定义:

intk=1,m=2;floatf=7;则下列选项中错误的表达式是(C)。

k=k>=k

-k++

k%int(f)

k>=f>=m

3

下列程序的功能是:

给r输入数据后计算半径为r的圆面积s。

程序在编译时出错。

main()

/*Beginning*/

{intr;floats;

scanf("%d",&r);

s=π*r*r;

printf("s=%f\n",s);

}

出错的原因是()。

注释语句书写位置错误

存放圆半径的变量r不应该定义为整型

输出语句中格式描述符非法

计算圆面积的赋值语句中使用了非法变量

4

下列定义变量的语句中错误的是(B)。

int_int;

doubleint_;

charFor;

floatUS$;

5

若变量x、y已正确定义并赋值,下列符合C语言语法的表达式是(A)。

++x,y=x--

x+1=y

x=x+10=x+y

double(x)/10

6

有下列程序,其中%u表示按无符号整数输出。

main()

{unsignedintx=0xFFFF;

printf("%u\n",x);

}

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

-1

65535

32767

0xFFFF

7

若变量均已正确定义并赋值,下列合法的C语言赋值语句是(A)。

x=y==5;

x=n%2.5;

x+n=i;

x=5=4+1;

8

设变量已正确定义并赋值,以下正确的表达式是(C)。

x=y*5=x+z

int(15.8%5)

x=y+z+5,++y

x=25%5.0

9

以下定义语句中正确的是(D)。

inta=b=0;

charA=65+1,b='b';

floata=1,"b=&a,"c=&b;

doublea=0.0;b=1.1;

10

已知字母A的ASCII代码值为65,若变量kk为char型,以下不能正确判断出kk中

的值为大写字母的表达式是()。

kk>='A'&&kk<='Z'

!

(kk>='A'‖kk<='Z')

(kk+32)>='a'&&(kk+32)<='z'

isalpha(kk)&&(kk<91)

11

以下选项中正确的定义语句是(A)。

doublea;b;

doublea=b=7;

doublea=7,b=7;

double,a,b;

12

下列算术运算符中,只能用于整型数据的是(D)。

-

+

*

%

13

有以下程序

main()

{intx=12,y=012;

printf(“%2d,%2d\n”,x,y);}

执行后输出结果是(B)。

10,01

12,12

12,10

10,12

14

下列程序的输出结果是()。

main()

{intm=12,n=34;

printf("%d%d",m++,++n);

printf("%d%d\n",n++,++m);

}

12353514

12353513

12343514

12343513

15

数字字符0的ASCII值为48,运行下列程序的输出结果是()。

main()

{chara='1',b='2';

printf("%c,",b++);

printf("%d\n",b-a)

}

3,2

50,2

2,2

2,50

16

下列程序的输出结果是()。

main()

{inta,b,d=25;

a=d/10%9;

b=a&&(-1);

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

6,1

2,1

6,0

2,0

17

下列程序的输出结果是(A)。

main()

{inti=1,j=2,k=3;

if(i++==1&&(++j==3‖k++==3))printf("%d%d%d\n",i,j,k);

}

123

234

223

233

18

设有定义:

inta=2,b=3,c=4;,则下列选项中值为0的表达式是(B)。

(!

a==1)&&(!

b==0)

(a<b)&&!

c‖1

a&&b

a‖(b+b)&&(c-a)

19

表达式3.6-5/2+1.2+5%2的值是(A)。

4.3

4.8

3.3

3.8

20

下列关于逻辑运算符两侧运算对象的叙述中正确的是(D)。

只能是整数0或1

只能是整数0或非0整数

可以是结构体类型的数据

可以是任意合法的表达式

21

有下列程序:

main(B)

{intx,y,z;

x=y=1;

z=x++,y++,++y;

printf("%d,%d,%d\n",x,y,z);

}

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

2,3,3

2,3,2

2,3,1

2,2,1

22

设有定义:

intk=0;,下列选项的4个表达式中与其他3个表达式的值不相同的是

(A)。

k++

k+=1

++k

k+1

23

下列选项中,当x为大于l的奇数时,值为0的表达式是(B)。

x%2==1

x/2

x%2!

=0

x%2==0

24

当整型变量c的值不为2、4、6时,值也为“真”的表达式是()。

(c==2)‖(c==4)‖(c==6)

(c>=2&&c<=6)‖(c!

=3)‖(c!

=5)

(c>=2&&c<-6)&&!

(c%2)

(c>=2&&c<=6)&&(c%2!

=1)

25

以下不能正确表示代数式2ab/cd的C语言表达式是(B)。

2*a*b/c/d

a*b/c/d*2

a/c/d*b*2

2*a*b/c*d

26

若t为double类型,表达式t=1,t+5,t++的值是(B)。

1

6.0

2.0

1.0

27

下列不能定义的用户标识符是(B)。

Main

_0

_int

sizeof

28

下列叙述中错误的是(A)。

用户所定义的标识符允许使用关键字

用户所定义的标识符应尽量做到“见名知意”

用户所定义的标识符必须以字母或下划线开头

用户定义的标识符中、大、小写字母代表不同标识

29

下列不合法的用户标识符是(B)。

j2_KEY

Double

4d

_8_

30

可在C程序中用作用户标识符的一组标识符是(C)。

and,_2007

Date,y-m-d

Hi,Dr.Tom

case,Bigl

31

下列选项中可作为C语言合法常量的是(A)。

-80

-080

-8e1.0

-80.0e

32

下列选项中,不能作为合法常量的是(B)。

1.234e04

1.234e0.4

1.234e+4

1.234e0

33

下列不合法的数值常量是(C)。

011

1e1

8.0E0.5

0xabcd

34

下列不合法的字符常量是(B)。

'\018'

\"'

'\\'

'\xcc'

35

以下选项中不属于字符常量的是(B)。

'C'

"C"

\xCC'

'\072'

36

以下选项中,能用作数据常量的是(D)。

0115

0118

1.5e1.5

115E

37

以下叙述中正确的是(C)。

C程序的基本组成单位是语句

C程序中的每一行只能写一条语句

简单C语句必须以分号结束

C语句必须在一行内写完

38

下列关于函数的叙述中正确的是(A)。

每个函数都可以被其他函数调用(包括main函数)

每个函数都可以被单独编译

每个函数都可以单独运行

在一个函数内部可以定义另一个函数

39

下列叙述中正确的是(C)。

每个C程序文件中都必须要有一个main()函数

在C程序中main()函数的位置是固定的

C程序中所有函数之间都可以相互调用,与函数所处位置无关

在C程序的函数中不能定义另一个函数

40

下列叙述中错误的是(C)。

C语言是一种结构化程序设计语言

结构化程序由顺序、分支、循环3种基本结构组成

使用3种基本结构构成的程序只能解决简单问题

结构化程序设计提倡模块化的设计方法

41

对于一个正常运行的C程序,下列叙述中正确的是(A)。

程序的执行总是从main函数开始,在main函数结束

程序的执行总是从程序的第一个函数开始,在main函数结束

程序的执行总是从main函数开始,在程序的最后一个函数中结束

程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束

42

下列叙述中正确的是(C)。

C语言程序将从源程序中第一个函数开始执行

可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行

C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束

main可作为用户标识符,用以命名任意一个函数作为主函数

43

算法具有5个特性,下列选项中不属于算法特性的是(A)。

有穷性

简洁性

可行性

确定性

44

计算机能直接执行的程序是(D)。

源程序

目标程序

汇编程序

可执行程序

45

以下叙述中正确的是(A)。

C程序中的注释只能出现在程序的开始位置和语句的后面

C程序书写格式严格,要求一行内只能写一个语句

C程序书写格式自由,一个语句可以写在多行上

用C语言编写的程序只能放在一个程序文件中

46

设有以下定义

#defined2

inta=0;doubleb=1.25;charc=’A’;

则下面语句中错误的是(C)。

a++; 

b++; 

c++;

d++;

47

下列叙述中错误的是(B)。

C语句必须以分号结束

复合语句在语法上被看作一条语句

空语句出现在任何位置都不会影响程序运行

赋值表达式末尾加分号就构成赋值语句

48

有定义语句:

intb;charc[10];,则正确的输入语句是(A)。

scanf("%d%s",&b,&c);

scanf("%d%s",&b,c);

scanf("%d%s",b,c);

scanf("%d%s",b,&c);

49

19)有下列程序:

main()

{intm,n,p;

scanf("m=%dn=%dp=%d",&m,&n,&p);

printf("%d%d%d\n",m,n,p);

}

若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,

则正确的输入是(D)。

m=123n=456p=789

m=123n=456p=789

m=123,n=456,p=789

123456789

50

下列叙述中正确的是(D)。

调用printf()函数时,必须要有输出项

使用putchar()函数时,必须在之前包含头文件stdio.h

在C语言中,整数可以以十二进制、八进制或十六进制的形式输出

调节getchar()函数读入字符时,可以从键盘上输入字符所对应的ASCII码

51

设有定义:

inta;floatb;执行scanf("%2d%f",&a,&b);语句时,若从键盘输入

876543.0,a和b的值分别是(C)。

876和543.000000

87和6543.000000

87和543.000000

76和543.000000

52

有下列程序:

main()

{inta=0,b=0;

a=10;b=20;

printf("a+b=%d\n",a+b);

}

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

a+b=10

a+b=30

30

出错

53

设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量

a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。

下列所示的输入形式中正

确的是(注:

口代表空格字符)()。

10□X□20□Y

10□X20□Y

10□X20Y

10X20Y

54

若在定义语句:

inta,b,c,*p=&c;之后,接着执行下列选项中的语句,则能正确执行的

语句是(B)。

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

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

scanf("%d",p);

scanf("%d",&p);

55

有下列程序段:

intj;floaty;charname[50];

scanf("%2d%f%s",&j,&y,name);

当执行上述程序段,从键盘上输入555667777abc后,y的值为(C)。

55566.0

566.0

7777.0

566777.0

56

已知字符'A'的ASCII代码值是65,字符变量cl的值是'A',c2的值是'D'。

执行语句

printf("%d,%d",c1,c2-2);后,输出结果是()。

A,B

A,68

65,66

65,68

57

有以下程序段

charch;intk;

ch='a';k=12;

printf("%c,%d,",ch,ch,k);

printf("k=%d\n",k);

已知字符a的ASCII十进制代码为97,则执行上述程序段后输出结果是()。

因变量类型与格式描述符的类型不匹配输出无定值

输出项与格式描述符个数不符,输出为零值或不定值

a,97,12k=12

a,97,k=12

58

若变量已正确定义为int型,要通过语句scanf("%d,%d,%d",&a,&b,&c);给a赋值

1、给b赋值2、给c赋值3,以下输入形式中错误的是(ò代表一个空格符)(A)。

òòò1,2,3<回车>

1ò2ò3<回车>

1,òòò2,òòò3<回车>

1,2,3<回车>

59

程序段:

intx=12;doubley=3.141593;printf("%d%8.6f",x,y);的输出结果是(C)。

123.142

123.141593

12,3.141593

123.1415930

60

若变量已正确说明为float类型,要通过语句scanf("%f%f%f",&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是(A)。

10<回车>22<回车>33<回车>

10.0,22.0,33.0<回车>

10.0<回车>22.033.0<回车>

1022<回车>33<回车>

61

已知intx=10,y=20,z=30;以下语句执行后x,y,z的值是(B)。

if(x>y)

z=x;x=y;y=z;

x=10,y=20,z=30

x=20,y=30,z=30

x=20,y=30,z=10

x=20,y=30,z=20

62

inta,b,c;

a=10;b=50;c=30;

if(a>b){a=b;b=c;c=a;}

printf("a=%db=%dc=%d\n”,a,b,c);

程序的输出结果是(A)。

a=10b=50c=30

a=10b=30c=30

a=10b=30c=10

a=50b=30c=50

63

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

inta=3,b=5,c=7;

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

if(c!

=a)c=b;

printf("%d,%d,%d\n",a,b,c);

其输出结果是(C)。

程序段有语法错

3,5,3

3,5,5

3,5,7

64

若有条件表达式(exp)?

a++:

b--,则以下表达式中能完全等价于表达式(exp)的是()。

(exp==0)

(exp!

=0)

(exp==1)

(exp!

=1)

65

以下是if语句的基本形式:

if(表达式)语句

其中“表达式”D

必须是逻辑表达式

必须是关系表达式

必须是逻辑表达式或关系表达式

可以是任意合法的表达式

66

在嵌套使用if语句时,C语言规定else总是(C)。

和之前与其具有相同缩进位置的if配对

和之前与其最近的if配对

和之前与其最近的且不带else的if配对

和之前的第一个if配对

67

有以下程序

main()

{inti=1,j=1,k=2;

if((j++‖k++)&&i++)

printf("%d,%d,%d\n",i,j,k);}

执行后输出结果是()。

1,1,2

2,2,1

2,2,2

2,2,3

68

以下不正确的if语句形式是(A)。

if(x>y&&x!

=y);

if(x==y)x+=y;

if(x!

=y)scanf("%d",&x)elsescanf("%d",&y);

if(x

69

请阅读以下程序:

main()

{

inta=5,b=0,c=0;

if(a=b+c)printf("***\n");

else

printf("$$$\n");

}

以上程序

有语法错不能通过编译

可以通过编译但不能通过连接

输出***

输出$$$

70

若执行以下程序时从键盘上输入9,则输出结果是(D)。

main()

{intn;

scanf("%d",&n);

if(n++<10)

printf("%d\n",n);

else

printf("%d\n",n--);

}

11

10

9

8

71

设变量x和y均已正确定义并赋值。

下列if语句中,在编译时将产生错误信息的是(D)。

if(x++);

if(x>y&&y!

=0);

if(x>0)x--

elsey++;

if(y<0){;}

elsex++;

72

下列程序的输出结果是(D)。

main()

{inti=0,j=2,k=3;

if(i++==1&&(++j==3‖k++==3))

printf("%d%d%d\n",i,j,k);

}

123

234

123

023

73

若有定义:

floatw;inta,b;则合法的switch语句是(DA)。

switch(w)

{case1.0:

printf("*\n");

case2.0:

printf("**\n");

}

switch(a);

{case1printf("*\n");

case2printf("**\n");

}

switch(b)

{case1:

printf("*\n");

default:

printf("\n");

casea:

printf("**\n");

}

switch(a+b);

{case1:

printf("*\n");

case2:

printf("**\n");

default:

printf("\n");

}

74

有下列程序:

main()

{intk=5,n=0;

do

{switch(k)

{case1:

case3:

n+=1;k--;break;

default:

n=0;k--;

case2:

case4;n+=2;k--;break;

}

printf("%d",n);

}while(k>0&&n<5);

}

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

235

0235

02356

2356

75

有如下程序

main()

{intx=1,a=0,b=0;

switch(x)

{case0:

b++;

case1:

a++;

case2:

a++;b++;

}

printf("a=%d,b=%d\n",a,b);

}

该程序的输出结果是()。

a=2,b=1

a=1,b=1

a=1,b=0

a=2,b=2

76

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

break语句只能用于switch语句

在switch语句中必须使用default

break语句必须与switch语句中的case配对使用

在switch语句中,不一定使用break语句

77

有以下程序

#include

main()

{

intx=1,y=0,a=0,b=0;

switch(x)

{case1:

switch(y)

{

case0:

a++;break;

case1:

b++;break;

}

case2:

a++;b++;break;

case3:

a++;b++;

}

printf("a=%d,b=%d\n",a,b);

}

程序的运行结果是()。

a=1,b=0

a=2,b=2

a=1,b=1

a=2,b=1

78

有如下程序

main()

{intx=10,y=5;

switch(x)

{case1:

x++;

default:

x+=y;

case2:

y--;

case3:

x--;

}

printf("x=%d,y=%d\n",x,y);

}

该程序的输出结果是()。

x=15,y=5

x=10,y=5

x=14,y=4

x=15,y=4

79

有如下程序

main()

{floatx=2.0,y;

if(x<0.0)y=0.0;

elseif(x<10.0)y=1.0/x;

elsey=1.0;

printf("%f\n",y);

}

该程序的输出结果是(D)。

0

0.25

0.5

1

80

有如下程序

main()

{inta=2,b=-1,c=2;

if(a

if(b<0)c=0;

elsec++;

printf("%d\n",c);

}

该程序的输出结果是(C)。

0

1

2

3

81

有以下程序

main()

{inta=5,b=4,c=3,d=2;

if(a>b>c)

printf("%d\n",d);

elseif((c-1>=d)

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2