华广12级汽服物流 C语言 复习题.docx

上传人:b****6 文档编号:8693533 上传时间:2023-02-01 格式:DOCX 页数:42 大小:53.12KB
下载 相关 举报
华广12级汽服物流 C语言 复习题.docx_第1页
第1页 / 共42页
华广12级汽服物流 C语言 复习题.docx_第2页
第2页 / 共42页
华广12级汽服物流 C语言 复习题.docx_第3页
第3页 / 共42页
华广12级汽服物流 C语言 复习题.docx_第4页
第4页 / 共42页
华广12级汽服物流 C语言 复习题.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

华广12级汽服物流 C语言 复习题.docx

《华广12级汽服物流 C语言 复习题.docx》由会员分享,可在线阅读,更多相关《华广12级汽服物流 C语言 复习题.docx(42页珍藏版)》请在冰豆网上搜索。

华广12级汽服物流 C语言 复习题.docx

华广12级汽服物流C语言复习题

一、单项选择题:

在每小题列出的4个备选项中只有一个正确的,请将正确答案的号码填在答题卡的相应位置。

错选、多选或未选均无分。

1.一个C语言程序是由。

A.函数组成B.一个主程序和若干子程序组成

C.若干过程组成D.若干子程序组成

2.C语言的基本单位是。

A.函数B.过程C.子程序D.子函数

3.每个C语言程序必须有且只有一个。

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

4.C语言规定:

在一个源程序中,main函数的位置。

A.必须在最后B.必须在最开始

C.必须在系统调用的函数的后面D.可以任意

5.一个C程序的执行是从______________。

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一函数开始,到本程序文件的最后一个函数结束

C.本程序的main函数开始,到本程序文件的最后一个函数结束

D.本程序文件的第一函数开始,到main函数结束

6.在C语言程序中。

A.每行只能写一个语句B.一行可以写多个语句

C.每个语句用逗号分隔D.每行语句必须对齐

7.在C语言中,复合语句。

A.必须出现在循环或分支中B.必须包含多条语句

C.必须使用{}将有关语句括起来D.以上三种都对

8.以下叙述正确的是。

A.在C程序中,main函数必须位于程序的最前面

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

C.C语言本身没有输入输出语句

D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误

9.以下叙述不正确的是。

A.一个C源程序可由一个或多个函数组成

B.在C程序中,注释说明只能位于一条语句的后面

C.一个C源程序必须包含一个main函数

D.C程序的基本组成单位是函数

10.用C语言编制的源程序要变为目标程序必须要经过。

A.解释B.汇编C.编辑D.编译

11.下列不属于C语言基本数据类型的是。

A.字符型B.长整型C.数组型D.双精度

12.下列C常量中合法的是。

A.\098B.1E3C.20-3D.1e-3.5

13.下面正确的字符常量是。

A.‘678’B.‘“’C.‘\’D.‘‘’

14.下列正确的转义字符是。

A.‘\a’B.‘\\’C.‘\abc’D.‘\’

15.下列叙述正确的是。

A.字符变量不能赋以整数B.字符数据可以进行算术运算

C.字符变量可存放一串字符D.任一整数都能表示一个字符

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

A.必须为字母B.是字母、数字和下划线中任一种字符

C.必须为下划线D.必须为字母或下划线

17.正确的C语言用户内定义标识符是

A.printB.float*C.when?

D.random%2

18.下列合法的变量名是。

A.3dB.no_1C.floatD.*abc

19.在C语言中,变量所分配的内存空间大小。

A.均为一个字节B.由用户自己定义

C.由变量的类型决定D.任意的

20.如果在用户的程序中要使用C库函数中的数学函数时,应在该源文件中使用的include命令是。

A.#includeB.#include

C.#includeD.#include

21.在C语言中,要求参加运算的数必须是整数的运算符是。

A./B.!

C.%D.==

22.设inta=1,b=2,c=3;能正确表示代数式的C语言表达式是。

A.1.0/(c*b*a)B.1.0/c*b*a

C.1/a/b/cD.1/(a*b*c)

23.设有intc,d;下面不是C语言的正确表达式是。

A.d%cB.!

cC.c

24.设有说明:

charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为。

A.doubleB.floatC.charD.int

25.设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f的值的数据类型为。

A.floatB.intC.doubleD.不确定

26.设x,y和z均为int型变量,则执行语句x=(y=(z=10)+5)-5;,后x,y和z的值。

A.x=10;y=10;z=15B.x=10;y=10;z=10

C.x=10;y=15;z=10D.x=10;y=5;z=10

27.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2=‘A’+‘6’-‘3’后,c2中的值为。

A.DB.68C.不确定的值D.C

28.设inta=12;,则执行完语句a-=2+3后,a的值为。

A.7B.13C.12D.5

29.设inta=12;,则执行完语句a*=2+3后,a的值为。

A.24B.27C.5D.60

30.若x、i、j和k都是int型变量,则执行下面表达式后x的值为。

x=(i=4,j=16,k=32)

A.4B.16C.32D.52

31.执行表达式a=12,a=a+13,a+20后a的值为。

A.45B.12C.25D.13

32.下列表达式的值为0的是。

A.3<5B.3/5.0C.3/5D.3%5

33.若有以下定义,则正确的赋值语句是。

inta,b;floatx;

A.a=1,b=2B.b++;C.a=b=5D.b=int(x);

34.下列变量赋初值不正确的是。

A.intx=‘1’;B.floata=“12.34”

C.intx=0;D.charx=65;

35.不使用中间变量,交换变量a和b的值的操作是。

A.b=b-a;a=b-a;a=a+b;B.a=a+b;b=a-b;a=a-b;

C.b=b-a;a=a-b;a=a-b;D.a+=b;b-=a;a-=b;

36.使用中间变量,交换变量a和b的值的操作是。

A.b=a;a=bB.t=a;b=a;a=t;

C.a=t;t=b;b=a;D.t=b;b=a;a=t;

37用printf函数输出单精度数据时,使用的格式字符是_______.

A.%dB.%cC.%fD.%o

38.用printf函数输出字符型数据时,使用的格式字符是________.

A.%dB.%cC.%fD.%o

39.设a=3,b=4,执行printf(“%d,%d”,(a,b),(b,a));的输出为。

A.3,4B.4,3C.3,3D.4,4

40.若有以下程序段,执行后输出的结果是。

intx1=1,x2=2,x3=3;

x3=x1/x2;

printf(“%d\n”,x3);

A.0.5B.1/2C.0D.3

41.以下程序的输出结果为。

main()

{charc1=‘a’,c2=‘b’,c3=‘c’;

printf(“a%cb%c\tc%c\n”,c1,c2,c3);

}

A.abcabcabc B.aabbcc  C.abc   D.aaaabb

42.执行下列语句的结果是。

i=3;

printf(“%d,”,++i);

printf(“%d”,i++);

A.3,3    B.3,4    C.4,3    D.4,4

43.有输入语句:

scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b为3,

c为2,从键盘输入数据的正确形式应当是。

(_表示空格)"

A.132<回车>B.1,3,2<回车>

C.a=1_b=3_c=2<回车>D.a=1,b=3,c=2<回车>

44假19.设inta;floatb;下面函数调用中正确的是。

A.scanf(“%f,%f”,a,b);B.putchar(b);

C.scanf(“%d,%f”,&a,&b);D.scanf(“%f%d”,&a,&b);

45.putchar函数可以向终端输出一个。

A.字符串B.整型变量表达式值

C.实型变量值D.字符或字符型变量值

46.设c1、c2均是char类型变量,则以下不正确的函数调用为____________.

A.printf(“%c,%c”,c1,c2);B.getchar(c1);

C.putchar(‘\\’);D.putchar(c1);

47.在C语言中表示逻辑真的是。

A.TB.tC.非0D.0

48.逻辑运算符两侧运算对象的数据类型。

A.只能是整型或字符型数据B.只能是0或1

C.只能是0或非0正数D.可以是任何类型数据

49.判断char型变量ch是否为大写字母的正确表达式是。

A.‘A’<=ch<=‘Z’B.(ch>=‘A’)&(ch<=‘Z’)

C.(ch>=‘A’)&&(ch<=‘Z’)D.(‘A’<=ch)&(‘Z’>=ch)

50.判断char型变量ch是否为小写字母的正确表达式是。

A.(‘a’<=ch)AND(‘z’>=ch)B.‘a’<=ch<=‘z’

C.(ch>=‘a’)&(ch<=‘z’)D.(ch>=‘a’)&&(ch<=‘z’)

51.判断char型变量ch是否为数字字符的正确表达式是。

A.(‘0’<=ch)AND(‘9’>=ch)B.(ch>=‘0’)&&(ch<=‘9’)

C.(ch>=‘0’)&(ch<=‘9’)D.‘0’<=ch<=‘9’

52.设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是    。

A.‘x’&&‘y’B.x<=y

C.x||y+z&&y-zD.!

((x

z||1)

53.能正确表示a和b同时为正或同时为负的表达式是。

A.(a>=0||b>=0)&&(a<0||b<0)     B.(a>=0&&b>=0)&&(a<0&&b<0)

C.(a+b>0)&&(a+b<=0)        D.a*b>0

54.设intx,y,z;执行语句x=y=z=0;++x&&++y||++z;后,x,y,z的值依次为。

A.1,0,0B.1,1,0C.1,0,1D.1,1,1

55.设intx=1,y=2,z=3;,则表达式x==z||x+y>z的值是。

A.0B.1C.2D.3

56.设有:

inta=1,b=2,c=3,d=4,x=2,y=2;执行(x=a>b)&&(y=c>d)后y的值为。

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

57.设有:

inta=2,b=1,c=3,d=4,x=2,y=3;执行(x=a>b)||(y=c>d)后y的值为。

A.0B.1C.2D.3

58.执行以下语句后a的值为。

inta=5,b=6,w=1,x=2,y=3,z=4;

(a=w>x)&&(b=y>z);

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

59.已知x=43,y=0,ch=‘A’;则表达式(x>=y&&ch<‘B’&&!

y)的值是。

A.0B.语法错C.1D.“假”

60.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式是。

A.只能用关系表达式B.只能用逻辑表达式

C.只能用逻辑表达式或关系表达式D.任意可求值的表达式

61.设intx=1,a=9,b=6,c=7,d=8;则执行语句:

if(a>b)if(c>d)x=2;elsex=3;后,x的值是。

A.不确定B.2C.3D.1

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

if(x>y)z=x;x=y;y=z;

A.x=20,y=30,z=30B.x=20,y=30,z=20

C.x=20,y=30,z=10D.x=20,y=30,z=20

63.执行下面程序段后,y的值为。

y=l;

if(y<0);

y++;

y++;

A.lB.2C.3D.4

64.已知intx=0,y=1.5;执行以下程序段以后,y的值为C。

if(x!

=0)

if(x>0)y=1;

elsey=-1;

A.0B.-1C.1.5D.1

65.以下程序的输出结果是    。

main()

{intx=2,y=-1,z=2;

if(x

if(y<0)z=0;

elsez+=1;

printf(“%d\n”,z);

}

A.3B.2C.1D.0

66.以下程序的运行结果是。

main()

{intm=5;

if(m++>5)printf(“%d\n”,m);

elseprintf(“%d\n”,m--);

}"

A.4B.5C.6D.7

67.已知intx=0,y=1;执行下面程序段后,y的值为。

if(x==0){if(!

y)y=1;}elsey=0;

A.0B.1C.-1D.不确定

68.若x、y、z均为int类型,则执行以下程序段后的输出结果是_____________.

x=10;y=3;z=7;

printf(“%d\n”,x>10?

x+100:

x-10);

printf(“%d\n”,y++||z++);

printf(“%d\n”,!

y>z);

printf(“%d\n”,y&&z);

A.0B.1C.0D.0

1111

1100

1110

69.设intml=5,m2=3;,表达式ml>m2?

(ml=l):

(m2=-1)运算后,ml和m2的值分别是。

A.5和-lB.l和3C.l和-lD.5和3.

70.设有定义intx=1;inty=‘a’<‘A’?

x--:

x++;,则变量y的值是。

A.0B.1C.2D.3

71.若有说明:

intw=1,x=2,y=3,z=4;则执行下列语句后的m值是。

m=(w

w:

x;

m=(m

m:

y;

m=(m

m:

z;

A.lB.2C.4D.3

72.若有说明:

intw=1,x=2,y=3,z=4;则执行下列语句后的m值是。

m=(w>x)?

w:

x;

m=(m>y)?

m:

y;

m=(m>z)?

m:

z;

A.lB.2C.4D.3

73.在C语言中,switch语句后一对圆括号中表达式的类型。

A.只能是整型或实型B.只能为int类型

C.可以是整型或字符型D.可以是任何类型

74.假设a=1,则执行完下面语句后,a的值为。

switch(a)

{case0:

a=a+1;

case1:

a=a+2;

case2:

a=a+3;break;

case3:

a=a+4;break;

default:

a=a+5;

}

A.1B.3C.6D.15

75.执行下列程序段以后,变量i的值是。

inti=7;

switch(i--)

{case4:

i+=2;

case5:

i+=3;

case6:

i+=4;break;

default:

i+=10;

}

A.9B.11C.16D.13

76.执行下面的程序段后,变量k的值是。

intk=5;

switch(k--)

{case4:

k+=2;

case5:

k+=3;

case6:

k+=4;break;

default:

k+=10;

}

A.9B.11C.12D.13

77.C语言中while和do-while循环的主要区别是    。

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

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

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

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

78.对下列程序段正确的描述是。

intk=10;

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

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

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

79.若有下列程序段,则下面正确的描述中是。

inti=5;

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

A.while循环执行5次B.循环是无限循环

C.循环体语句一次也不执行D.循环体语句执行一次27.执行下面

80.段后屏幕的显示结果是。

inti=1;while(i)printf(“%d”,i--);

A.1B.0C.无显示D.死循环

81.设有以下程序段,则。

intx=0,s=0;

while(!

x!

=0)s+=++x;

printf(”%d”,s);

A.运行程序段后输出1B.运行程序段后输出0

C.程序段中的控制表达式是非法的D.程序段执行无限次

82.下面程序段的运行结果是。

x=y=0;

while(x<15)y++,x+=++y;

printf(“%d,%d”,y,x);

A.20,8B.20,7C.6,12D.8,20

83.下面程序段的运行结果是    。

x=y=0;

while(x<5)y++,x+=y;

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

A.20,7B.3,6C.3,12D.8,20

87.运行下列程序段后变量i和s的值依次为。

inti=1,s=0;

while((s+=i++)<20);

A.5,15B.6.21C.6,15D.7,21

88.下面程序段运行结果是。

intn=0;

while(n++<=2);printf(“%d”,n);

A.2B.3C.4D.有语法错误

89.下面程序的运行结果是    。

#include

main()

{

intnum=0;

while(num<=2)

{

num++;

printf(“%d\n”,num);

}

}

A.1B.1C.1D.1

222

33

4

90.下列循环结构至少能执行一次循环体的是。

A.whileB.do-whileC.forD.if-goto

91.对以下程序段描述正确的是。

x=-1;

do

{x=x*x;}

while(!

x);

A.是死循环   B.循环执行二次C.循环执行一次  D.有语法错误

92.设inti=1;执行下列程序段后,屏幕输出结果是。

do

{printf(“%d”,i);

}while(i--);

A.lB.OC.lOD.无显示

93.以下程序段。

k=-10;

do

{k=k*k;

}while(!

k);

A.是死循环B.循环执行二次C.循环执行一次D.有语法错误

94.执行以下程序段后,屏幕的显示结果是。

i=10;s=0;

do

{s=s+i;i++;}

while(i<=10);

printf(“%d”,s);

A.0B.10C.11D.21

95.执行以下程序段后,屏幕的显示结果是。

i=10;s=0;do{s=s+i;i++;}while(i<=10);printf(“%d”,s);

A.0B.10C.11D.21

96.若有如下语句,则上面程序段是。

intx=3;

do{printf(“%d\n”,x-=2);

}while(!

(――x));

A.输出的是1B.输出的是1和-2

C.输出的是3和0D.是死循环

97.下面程序运行的结果是。

main()

{inty=10;

do{y--;}while(--y);

printf(“%d\n”,y--);

}

A.-1B.1C.8D.0

98.若i为整型变量,则以下循环执行次数是。

for(i=-2;i==0;i--)printf(“%d”,i++);

A.无限次B.2次C.l次D.O次

99.下面有关for循环的正确描述是。

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体

D.for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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