C语言常见复习题(选择填空)及参考答案

C语言常见复习题(选择填空)及参考答案
C语言常见复习题(选择填空)及参考答案

C语言常见复习题及参考答案

一、选择题

1.下述标识符中,()是合法的用户标识符。

A.A#C

B.getch

C.void

D.ab*

2.在C语言中,字符型数据在内存中是以()形式存放的。

A.原码

B.BCD码

C.反码

D.ASCII码

3.以下选项中不合法的用户标识符是()。

A.abc.c

B.file

C.Main

D.PRONTF

4.以下选项中不合法的用户标识符是()。

A.123

B.printf

C.Anbsp;

D.Dim

5.可以在C语言程序中用做用户标识符的一组标识符是()。

A.void

B.as-b3

C.for

D.2c

define -123 -abc Do

WORD If cas SIG

6.在以下各组标识符中,合法的用户标识符是(1)、(2)、(3)。

(1)A.001 B.table_1 C.0_t D.k%

Int t*.1 W10 point

(2)A.Fast_ B.void C.pbl D.

Fast+Big abs fabs beep

(3)A.xy_ B.longdouble C.*p D.CHAR

变量1 signed history Float

7.()是构成C语言的基本单位。

A.函数

B.过程

C.子程序

D.子例程

8.若有说明:char s1='\067';char s2="1";char s3='1';则s1中(1),s2中(2),s3中(3)。

(1).A.包含3个字符 B.包含2个字符

C.包含1个字符

D.无定值,说明不合法

(2).A.包含1个字符 B.包含2个字符

C.包含3个字符

D.无定值,说明不合法

(3).A.包含1个字符 B.包含2个字符

C.包含3个字符

D.无定值,说明不合法

9.若x为int型变量,则执行以下语句后,x的值为

x=6;

x+=x-=x*x

A.36

B.-60

C.60

D.-24

10.在C语言中,char 型数据在内存中是以()形式存储的。

A.原码

B.补码

C.ASCII码

D.反码

11.以下运算符中优先级最低的算符为(),优先级最高的为()。

A.&&

B.&

C.|=

D.||

E.?:

F.!=

12.若有运算符>、*=、<<、%、sizeof,则它们按优先级(由低至高)的正确排列顺序为

A.*= << > % sizeof

B.<< *= > % sizeof

C.*= > << sizeof %

D.*= > << % sizeof

13.若有以下类型说明语句

char w; int x; float y; double z;

则表达式w*x+z-y 的结果是()类型。

A.float

B.char

C.int

D.double

14.若w,x,y,z 均为int 型变量,则执行下面的语句后,

w=(1), x=(2), y=(3), z=(4)。

w=5; x=4;

y=w++*w++*w++;

z=--x*=--x*--x;

(1)A.8 B.7 C.6 D.24

A.4

B.3

C.2

D.1

A.150

B.125

C.210

D.336

A.64

B.1

C.6

D.24

15.C语言的程序一行写不下时,可以

A.用逗号换行

B.用分号换行

C.在任意一空格处换行

D.用回车符换行

16.下述标识符中,()是合法的用户标识符。

A.A#C

B.getch

C.void

D.ab*

17.在C语言中,字符型数据在内存中是以()形式存放。

A.原码

B.BCD

C.反码

D.AS

18.()是非法的C语言转义字符。

A.'\b'

B.'\0xf'

C.'\037'

D.'\''

19.语句char s='\092';的作用是

A.s包含1个字符

B.说明不合法, s的值不定。

C.使s包含4个字符

D.使s包含3个字符

20.在C语言中,int,char,和short三种类型数据所占用的内存

A.均为2个字节

B.由用户自己定义

C.由所用机器的机器字长决定

D.是任意的

21.高性能int类型的数据长度为2个字节,则unsigned int 类型数据的取值范围是

A.0~255

B.0~65535

C.-32768~32767

D.-256~255

22.以下()是不正确的转义字符。

A.'\\'

B.'\'

C.'081'

D.'\0'

23.一个C语言的程序是由()组成

A.主程序

B.子程序

C.函数

D.过程

24.一个C语言的程序总是从()开始的。

A.主过程

B.主函数

C.子程序

D.主程序

25.一个C语言的程序是由

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

B.函数组成

C.若干过程组成

D.若干子程序组成

26.以下述叙不正确的是

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

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

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

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

27.C语言中规定:在一个源程序中main函数的位置

A.必须在最开始

B.必须在系统调用的库函数的后面

C.可以任意

D.必须在最后

28.一个C程序的执行是从

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

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

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

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

29.以下述叙正确的是

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

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

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

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

二、填空题

1.将下列给出的常量分别归类到:整型常量、浮点常量和字符型常量

(1)0x7a (2)078 (3)6a (4)57L

(5)'m' (6)"ab6" (7)-32 (8)3.4,256

(9)0e0 (10).e0 (11)-3.1e-5 (12)2e0

(13)0.012e003 (14)'\"' (15)'xy' (16)" "

(17)"\nab\t" (18)'\"' (19)'\07'

2.指出下列标识符中哪些是非法的

(1)a_Char (2)b22c (3)286pc (4)-am

(5)_7b (6)ab# (7)Max_1 (8)__Star

(9)*itm (10)To-2 (11)for (12)"tt"

3.C源程序的基本单位是____。

4.一个C源程序中至少应包含一个_____。

5.在一个C源程序中,注释部分二侧的分界符分别为___和___。

6.在C语言中,输入操作是由库函数____完成的,输出操作是由库函数____完成的。

反馈测试题参考答案:

一、选择题

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

6. (1)A,(2)C (3)D

7. C

8. (10C (2)D (3)A

9. B 10.C 11.C, F 12. D

13. D 14. (1)A,(2)D, (3)B,(4) B

15. C 16. B 17.D 18. B

19. B 20. C 21. B 22.C

23. C 24. B 25.B 26. D

27. C 28. A 29. C

二、填空题

1、整型常量有(1) (4)

浮点型常量有:(9) (12) (13) (14)

字符型常量有:(5) (6) (16) (17) (18) (19) (20)

2、非法标识符有:3) (4) (6) (9) (10) (12)

3、函数

4、主函数

5、(1)/* (2)*/

6、(1)scanf (2)printf

第二部分C语言基本语法知识

一、选择题

(1)以下叙述中错误的是

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

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

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

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

(2)以下叙述中错误的是

A)C语句必须以分号结束

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

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

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

(3)以下不能正确计算代数式值的C语言表达式是

A)1/3*sin(1/2)*sin(1/2)

B)sin(0.5)*sin(0.5)/3

C)pow(sin(0.5),2)/3

D)1/3.0*pow(sin(1.0/2),2)

(4)以下能正确定义且赋初值的语句是

A)int n1=n2=10;

B)char c=32;

C)float f=f+1.1;

D)double x=12.3E2.5;

(5)设有定义:int k=1,m=2; float f=7;,则以下选项中错误的表达式是A)k=k>=k B)-k++ C)k%int(f) D)k>=f>=m

(6)有以下程序段

int k=0,a=1,b=2,c=3;

k=ac ? c:k;

执行该程序段后,k的值是

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

(7)以下选项中可作为C语言合法常量的是

A)-80.

B)-080

C)-8e1.0

D)-80.0e

(8).以下不能定义为用户标识符的是

A)Main

B)_0

C)_int

D)sizeof

(9)以下选项中,不能作为合法常量的是

A)1.234e04

B)1.234e0.4

C)1.234e+4

D)1.234e0

(10)有以下程序

main()

{ int m=12,n=34;

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

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

}

程序运行后的输出结果是

A)12353514

B)12353513

C)12343514

D)12343513

(11)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式a A)1

B)2 C)3 D)4

(12)下列选项中,不能用作标识符的是

A) _1234_

B) _1_2

C) int_2_

D) 2_int_

(13)有以下程序

main()

{ int m=3,n=4,x;

x=-m++;

x=x+8/++n;

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

}

程序运行后的输出结果是

A) 3 B) 5 C) -1 D) -2

(14)以下符合C语言语法的实型常量是

A) 1.2E0.5

B) 3.14.159E

C) .5E-3

D) E15

(15) 以下4组用户定义标识符中,全部合法的一组是

A) _main B) If C) txt D) int

enclude -max REAL k_2

sin turbo 3COM _001

(16) 若以下选项中的变量已正确定义,则正确的赋值语句是

A) x1=26.8%3

B) 1+2=x2

C) x3=0x12

D) x4=1+2=3;

(17) 设有以下定义

int a=0;

double b=1.25;

char c=’A’;

#define d 2

则下面语句中错误的是

A) a++; B) b++ C) c++; D) d++;

(18)设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相符的是

A) (a+B) *h/2

B) (1/2)*(a+B) *h

C) (a+B) *h*1/2

D) h/2*(a+B)

(19) 以下叙述中正确的是

A) C程序中注释部分可以出现在程序中任意合适的地方

B) 花括号“{”和“}”只能作为函数体的定界符

C) 构成C程序的基本单位是函数,所有函数名都可以由用户命名

D) 分号是C语句之间的分隔符,不是语句的一部分

(20) 以下选项中可作为C语言合法整数的是

A) 10110B B) 0386 C) 0Xffa D) x2a2

(21) 以下不能定义为用户标识符的是

A) scanf B) V oid C) _3com_ D) int

(22) 设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是

A) x=x*100+0.5/100.0;

B) x=(x*100+0.5)/100.0;

C) x=(int)(x*100+0.5)/100.0;

D) x=(x/100+0.5)*100.0;

(23)下列关于C语言用户标识符的叙述中正确的是

A) 用户标识符中可以出现在下划线和中划线(减号)

B) 用户标识符中不可以出现中划线,但可以出现下划线

C) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头

D) 用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头

(24)下列关于单目运算符++、--的叙述中正确的是

A) 它们的运算对象可以是任何变量和常量

B) 它们的运算对象可以是char型变量和int型变量,但不能是float型变量

C) 它们的运算对象可以是int型变量,但不能是double型变量和float型变量

D) 它们的运算对象可以是char型变量、int型变量和float型变量

(25) 以下选项中合法的实型常数是

A) 5E2.0 B) E-3 C) .2E0 D) 1.3E

(26) 以下选项中合法的用户标识符是

A) long B) _2Test C) 3Dmax D) A.dat

(27) 以下非法的赋值语句是

A) n=(i=2,++i); B)j++; C) ++(i+1); D)x=j>0;

(28) 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是

A)6.500000

B)6

C) 5.500000

D) 6.000000

(29) 与数学式子对应的C语言表达式是

A) 3*x^n(2*x-1)

B) 3*x**n(2*x-1)

C) 3*pow(x,n)*(1/(2*x-1))

D) 3*pow(n,x)/(2*x-1)

(30) 若有以下程序:

main()

{ int k=2,i=2,m;

m=(k+=i*=k);printf(“%d,%d\n”,m,i);

}

执行后的输出结果是

A) 8,6

B) 8,3

C) 6,4

D) 7,4

(31) 以下选项中,与k=n++完全等价的表达式是

A) k=n,n=n+1

B) n=n+1,k=n

C) k=++n

D) k+=n+1

(32) 若有定义:int a=8,b=5,C;,执行语句C=a/b+0.4;后,c的值为

A) 1.4 B) 1 C) 2.0 D) 2

(33) 以下选项中不属于C语言的类型的是

A) signed short imt

B) unsigned long int

C) unsigned int

D) long short

(34) 以下叙述正确的是

A) 可以把define和if定义为用户标识符

B) 可以把define定义为用户标识符,但不能把if定义为用户标识符

C) 可以把if定义为用户标识符,但不能把define定义为用户标识符

D) define和if都不能定义为用户标识符

(35) 在C语言中,合法的长整型常数是

A) OL

B) 4962710

C) 324562&

D) 216D

(36) 以下有4组用户标识符,其中合法的一组是

A) For B) 4d C) f2_G3 D) WORD

-sub DO IF void

Case Size abc define

(37) 假定x和y为double型,则表达式x=2,y=x+3/2的值是

A) 3.500000

B) 3

C) 2.000000

D) 3.000000

(38) 以下合法的赋值语句是

A) x=y=100

B) d--;

C) x+y;

D) c=int(a+b);

(39) 设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是

pprintf(”%d,%d\n”,x--,--y);

A) 10,3

B) 9.3

C) 9.2

D)10.2

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

main()

{ int a=3;

printf(“%d\n”,(a+a-=a*a) );

}

A) –6

B)12

C) 0

D) -12

(41) 以下所列的C语言常量中,错误的是

A) 0xFF

B) 1.2e0.5

C) 2L

D) ‘\72’

(42) 下列选项中,合法的C语言关键字是

A) V AR

B) cher

C) integer

D) default

(43) 以下变量x.、y、z均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是

A) x/y*z

B) x*(1/(y*z))

C) x/y*1/z

D) x/y/z

(44) 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是

A) -3

B) 9

C) -12

D) 6

(45) 若变量已正确定义并赋值,下面符合C语言语法的表达式是

A) a:=b+1

B) a=b=c+2

C) int 18.5%3

D) a=a+7=c+b

(46) C语言中运算对象必须是整型的运算符是

A) %=

B) /

C) =

D) 〈=

(47) 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是

A) 1 B) 2 C) 2.0 D) 2.5

(48) 若变量a、iI已正确定义,且i已正确赋值,合法的语句是

A) a==1 B) ++i; C) a=a++=5; D) a=int(i);

(49) 若有以下程序段,

int c1=1,c2=2,c3;

c3=1.0/c2*c1;

则执行后,c3中的值是

A) 0 B) 0.5 C) 1 D) 2

(50) 设有int x=11; 则表达式(x++ * 1/3) 的值是

A) 3 B) 4 C) 11 D) 12

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

A) 3 B) 3.2 C) 0 D) 3.07

main()

{ double d=3.2; int x,y;

x=1.2; y=(x+3.8)/5.0;

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

}

(52) 下列变量定义中合法的是

A) short _a=1-.le-1;

B) double b=1+5e2.5;

C) long do=0xfdaL;

D) float 2_and=1-e-3;

(53) 以下选项中属于C语言的数据类型是

A) 复数型

B) 逻辑型

C) 双精度型

D) 集合型

(54) 在C语言中,不正确的int类型的常数是

A) 32768

B) 0

C) 037

D) 0xAF

(55) 设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x的值为

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

(56) 设有如下的变量定义:

int i=8, k, a, b;

unsigned long w=5;

double x=1, 42, y=5.2;

则以下符合C语言语法的表达式是

A) a+=a-=(b=4)*(a=3)

B) x%(-3);

C) a=a*3=2

D) y=float(i)

(57) 假定有以下变量定义:

int k=7,x=12;

则能使值为3的表达式是

A) x%=(k%=5) B) x%=(k-k%5) C) x%=k-k%5 D) (x%=k)-(k%=5)

(58) 设x和y均为int型变量,则以下语句:x+=y,y=x-y;x-=y;的功能是

A) 把x和y按从大到小排列

B) 把x和y按从小到大排列

C) 无确定结果

D) 交换x和y中的值

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

A) 10 10 B) 12 12 C) 11 10 D) 11

13

main()

{ int a=12,b=12;

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

}

(60) 在C语言提供的合法的关键字是

A) swicth B) cher C) Case D) default

(61) 若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是

A)1 B)2 C)2.0 D)2.5

(62) C语言提供的合法的数据类型关键字是

A) Double B) short C) integer D) Char

(63) 在C语言中,合法的长整型常数是

A) 0L

B) 4962710

C) 0.054838743

D) 2.1869e10

(64) 若有说明和语句:

int a=5;

a++;

此处表达式a++的值是

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

(65) C语言中最简单的数据类型包括

A) 整型、实型、逻辑型

B) 整型、实型、字符型

C) 整型、字符型、逻辑型

D) 整型、实型、逻辑型、字符型

(66) C语言中,运乍对象必须是整型数的运算符是

A) % B) \ C) %和\ D) * *

(67) 设有如下定义: int x=10,y=3,z; 则语句

printf("%d\n",z=(x%y,x/y)); 的输出结果是

A) 1 B) 0 C) 4 D) 3

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

main()

{ int x=10,y=10;

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

A) 10 10

B) 9 9

C) 9 10

D) 10 9

(69) 下列语句中符合C语言语法的赋值语句是

A) a=7+b+c=a+7;

B) a=7+b++=a+7;

C) a=7+b,b++,a+7

D) a=7+b,c=a+7;

(70) 在C语言中,要求运算数必须是整型的运算符是

A) % B) / C) < D) !

(71) 请选出可用作C语言用户标识符的一组标识符

A) void B) a3_b3 C) For D) 2a

define _123 -abc DO

WORD IF Case sizeof

(72) 设int a=12,则执行完语句a+=a-=a*a后,a的值是

A) 552 B) 264 C) 144 D) -264

(73) C语言程序的基本单位是

A) 程序行B) 语句C) 函数D) 字符

(74) 请选出合法的C语言赋值语句

A) a=b=58

B) i++;

C) a=58,b=58

D) k=int(a+b);

(75)在C语言中,如果下面的变量都是int类型,则输出的结果是。

sum=pad=5; pAd=sum + + ,pAd + + , + + pAd;

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

A) 7

B) 6

C) 5

D) 4

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

# include

main()

{ int i=010 , j = 10;

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

A) 11,10

B) 9,10

C) 010,9

D) 10,9

二、填空题

(1)语句:x++;?++x; x=x+1;?x=l+x; ,执行后都使变量x中的值增1,请写出一条同一功能的赋值语句(不得与列举的相同)【1】。

(2) 若有定义:int a=10,b=9,c=8;接着顺序执行下列语句后,变量b中的值是[2] 。

c=(a-=(b-5));

c=(a%11)+(b=3);

(3) 设x和y均为int型变量,且x=1,y=2,则以下表达式的值为【3】。

1.0+x/y

(4) 数学式子写成C语言表达式是【4】。

(5) 设a、b、c为整型数,且a=2、b=3、c=4,则执行完以下语句:

a*=16+(b++)-(++c);

后,a的值是【5】。

答案:

一、填空题

01) A 02) C 03) A 04) B 05) C

06) B 07) A 08) D 09) B 10) A

11) A 12) D 13) D 14) C 15) A

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

21) D 22) C 23) B 24) D 25) C

26) B 27) C 28) D 29) C 30) C

31) A 32) B 33) D 34) B 35) A

36) C 37) D 38) B 39) D 40) D

41) B 42) D 43) A 44) C 45) B

46) A 47) C 48) B 49) A 50) A

51) C 52) A 53) C 54) A 55) C

56) A57) D 58) D 59) D 60) D

61) C 62) B 63) A 64) C 65) B

66) A 67) D 68) D 69) D 70) A

71) B 72) D 73) C 74) B 75) C

76) B

二、填空题

(1)x+=1

(2)3

(3)1.0

(4)pow(sin(x),2) * (a+b)/(a-b) 或sit(x) * sit(x) * (a+b)/(a-b)

(5)28

C语言常见复习题(选择填空)及参考答案

C语言常见复习题及参考答案 一、选择题 1.下述标识符中,()是合法的用户标识符。 A.A#C B.getch C.void D.ab* 2.在C语言中,字符型数据在内存中是以()形式存放的。 A.原码 B.BCD码 C.反码 D.ASCII码 3.以下选项中不合法的用户标识符是()。 A.abc.c B.file C.Main D.PRONTF 4.以下选项中不合法的用户标识符是()。 A.123 B.printf C.Anbsp; D.Dim 5.可以在C语言程序中用做用户标识符的一组标识符是()。 A.void B.as-b3 C.for D.2c define -123 -abc Do WORD If cas SIG 6.在以下各组标识符中,合法的用户标识符是(1)、(2)、(3)。 (1)A.001 B.table_1 C.0_t D.k% Int t*.1 W10 point (2)A.Fast_ B.void C.pbl D. Fast+Big abs fabs beep (3)A.xy_ B.longdouble C.*p D.CHAR 变量1 signed history Float 7.()是构成C语言的基本单位。 A.函数 B.过程 C.子程序 D.子例程 8.若有说明:char s1='\067';char s2="1";char s3='1';则s1中(1),s2中(2),s3中(3)。

(1).A.包含3个字符 B.包含2个字符 C.包含1个字符 D.无定值,说明不合法 (2).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 (3).A.包含1个字符 B.包含2个字符 C.包含3个字符 D.无定值,说明不合法 9.若x为int型变量,则执行以下语句后,x的值为 x=6; x+=x-=x*x A.36 B.-60 C.60 D.-24 10.在C语言中,char 型数据在内存中是以()形式存储的。 A.原码 B.补码 C.ASCII码 D.反码 11.以下运算符中优先级最低的算符为(),优先级最高的为()。 A.&& B.& C.|= D.|| E.?: F.!= 12.若有运算符>、*=、<<、%、sizeof,则它们按优先级(由低至高)的正确排列顺序为 A.*= << > % sizeof B.<< *= > % sizeof C.*= > << sizeof % D.*= > << % sizeof 13.若有以下类型说明语句 char w; int x; float y; double z; 则表达式w*x+z-y 的结果是()类型。 A.float B.char C.int D.double 14.若w,x,y,z 均为int 型变量,则执行下面的语句后, w=(1), x=(2), y=(3), z=(4)。 w=5; x=4; y=w++*w++*w++; z=--x*=--x*--x;

c语言复习题答案

c语言复习题-2010 1~5 ABCDB 6~10 BADAD 11~15 DABAB 16~20 ADDDC 1. 编程计算1!+2!+3!+……+n!的值,其中n的值由用户输入。 #include main() { long term = 1,sum = 0; int i,n; scanf(“%d”,&n); for (i = 1; i <= n; i++) { term = term * i; sum = sum + term; } printf("1!+2!+...n! = %ld \n", sum); } 2. 从键盘任意输入某班20个学生的成绩,打印最高分,并统计不及格学生的人数。要求按如下函数原型进行编程,分别计算最高分和统计不及格学生的人数:int FindMax(int score[], int n); int CountFail(int score[], int n); #include int FindMax(int score[], int n); int CountFail(int score[], int n); main() { int i, score[20],max,count; for (i=0; i<20; i++) { scanf("%d",&score[i]); } max = FindMax(score, 20); printf("max = %d\n",max); count = CountFail(score, 20); printf("count = %d\n",count); } int FindMax(int score[], int n) { int max,i;

c语言试题及答案

1、以下正确的说法是( B ) (A) 用户若需要调用标准库函数,调用前必须重新定义 (B) 用户可以重新定义标准库函数,若如此,该函数将失去原有含义 (C) 系统根本不允许用户重新定义标准库函数 (D) 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包括到用户源文件中,系统自动去调 2、以下正确的函数声明形式是( A ) (A) double fun(int x, int y) (B) double fun(int x; int y) (C) double fun(int x, int y); (D) double fun(int x,y); 3、以下正确的函数形式是( D ) (A) double fun(int x, int y) { z=x+y; return z;} (B) fun(int x,y) { int z; return z;} (C) fun(x,y) { int x,y; double z; z=x+y; return z;} (D) double fun(int x, int y) { double z; z=x+y; return z;} 4、以下正确的说法是( A ) 在C语言中 (A) 实参和与其对应的形参各占用独立的存储单元 (B) 实参和与其对应的形参共占用一个存储单元 (C) 只有当实参和与其对应的形参同名时才共占用存储单元 (D) 形参是虚拟的,不占用存储单元 5、若调用一个函数,且此函数中没有return语句,则正确的说法是( A ) 该函数 (A) 没有返回值 (B) 返回若干个系统默认值 (C) 能返回一个用户所希望的函数值 (D) 返回一个不确定的值 6、以下不正确的说法是( B ) C语言规定 (A) 实参可以是常量、变量和表达式 (B) 形参可以是常量、变量和表达式 (C) 实参可以为任意类型 (D) 形参应与其对应的实参类型一致 7、以下正确的说法是( C ) (A) 定义函数时,形参的类型说明可以放在函数体内 (B) return后边的值不能为表达式 (C) 如果函数值的类型与返回值类型不一致,以函数值类型为准 (D) 如果形参与实参的类型不一致,以实参类型为准 8、C语言规定,简单变量做实参时,它和对应形参之间的数据传递方式是( B ) (A) 地址传递 (B) 单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式

C语言考试题库及答案复习整理

C 语言理论上机考试选择题部分(共200题) 1、下面程序的输出是___D______ #include void main() { int k=11; printf("k=%d,k=%o,k=%x\n",k,k,k); } A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b 2、在下列选项中,不正确的赋值语句是__D______. A) ++t; B) n1=(n2=(n3=0)); C) k=i=j; D) a=b+c=1; 3、下面合法的C 语言字符常量是______A____. A) '\t' B) "A" C) 65 D) A 4、表达式: 10!=9的值是 ________D____. A) true B) 非零值 C) 0 D) 1 5、C 语言提供的合法的数据类型关键字是_____B____. A) Double B) short C) integer D) Char 6、字符(char)型数据在微机内存中的存储形式是__D__. A) 反码 B) 补码 C) EBCDIC 码 D) ASCII 码 7、C 语言程序的基本单位是_____C______. A) 程序行 B) 语句 C) 函数 D) 字符 8、设 int a=12,则执行完语句

a+=a-=a*a 后,a 的值是____D____ A) 552 B) 264 C) 144 D) -264 9、执行下面程序中的输出语句后,输出结果是____B__. #include void main() {int a; printf("%d\n",(a=3*5,a*4,a+5)); } A) 65 B) 20 C) 15 D) 10 10、下面程序的输出是____B______. #include void main() {int x=023; printf("%d\n",--x); } A) 17 B) 18 C) 23 D) 24 11、下面程序的输出的是_____C____. #include void main() {int x=10,y=3; printf("%d\n",y=x/y); } A) 0 B) 1 C) 3 D) 不确定的值 12、已知字母A 的ASCII 码为十进制的65,下面程序的输出是______A_____. #include void main() {char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); } A) 67,D B) B,C C) C,D D) 不确定的值 13、若要求在if 后一对圆括号中表示a 不等于0的关系,则能正确表示这一关系的表达式为____D__. A) a<>0 B) !a C) a=0 D) a

C语言基础练习题(含答案)Word版

第一章C语言基础知识 1.1 选择题 1. 以下不是C语言的特点的是()。B A、语言简洁紧凑 B、能够编制出功能复杂的程序 C、C语言可以直接对硬件操作 D、C语言移植性好 2. 下列字符序列中,不可用作C语言标识符的是()。B A.abc123 B.no.1 C._123_ D._ok 3. 正确的C语言标识符是()。A A._buy_2 B.2_buy C.?_buy D.buy? 4. 请选出可用作C语言用户标识符的一组标识符()。B A.void B.a3_b3 C.For D.2a define _123 -abc DO WORD IF Case sizeof 5. 下列符号中,不属于转义字符的是()。B A.\\ B.\0xAA C.\t D.\0 6. 不属于C语言关键字的是()。d A.int B.break C.while D.character 7. 是C语言提供的合法关键字的是()。b A.Float B.signed C.integer D.Char 8. 以下不能定义为用户标示符的是()。b A.scanf B.Void C._3com_ D.int 9. 一个C程序是由()。 b A.一个主程序和若干子程序组成 B.一个或多个函数组成 C.若干过程组成 D.若干子程序组成 10. C语言程序的基本单位是()。 c A.程序行 B.语句 C.函数 D.字符 11. 下列说法中,错误的是()。 a A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外 C.主函数只能调用用户函数或系统函数,用户函数可以相互调用 D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数 12. 以下说法中正确的是()。 c A.C语言程序总是从第一个定义的函数开始执行 B.在C语言程序中,要调用的函数必须在main( )函数中定义 C.C语言程序总是从main( )函数开始执行

(完整版)C语言试题及答案解析

C语言 一、选择题(第题2分,共20分) 1.一个C程序的执行是从 A 。 A) 本程序的main函数开始,到main函数结束 B) 本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C) 本程序文件的第一个函数开始,到本程序main函数结束 D) 本程序的main函数开始,到本程序文件的最后一个函数结束 2.若x、i、j、k都是int型变量,则计算下面表达式后,x的值为 C 。 x=(i=4,j=16,k=32) A) 4 B) 16 C) 32 D) 52 3.设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为 C 。 A) 0~255 B) 0~32767 C) 0~65535 D) 0~2147483647 4.设有说明:char w; int x; float y; double z;则表达式w*x+z-y值的数据类型为 D 。 A) float B) char C) int D) double 5. putchar函数可以向终端输出一个 D 。 A) 整型变量表达式 B) 实型变量值 C) 字符串 D) 字符或字符型变量值 6. printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式 B ;如果字符串长度小于5,则输出按方式 C 。 A) 从左起输出该字符串,右补空格 B) 按原字符长从左向右全部输出 C) 右对齐输出该字符串,左补空格 D) 输出错误信息 7.判断char型变量ch是否为大写字母的正确表达式是 C 。 A) ‘A’<=ch<=‘Z’ B) (ch>=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 8.已知int x=10,y=20,z=30;以下语句执行后x,y,z的值是 B 。 if(x>y) z=x; x=y; y=z; A) x=10, y=20, z=30 B) x=20, y=30, z=30 C) x=20, y=30, z=10 D) x=20, y=30, z=20 9.以下程序段______C__. x=-1; do{ x=x*x; } while(!x); A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误 10.以下正确的描述是___B____. A)continue语句的作用是结束整个循环的执行

C语言题库(填空题部分)

二、填空题 1、C语言中对文件读写之前必须先打开文件,文件的打开是通过调用________函数来实现。 答案: 1:fopen#fopen()#fopen() 知识点:知识点/基本理论/C11文件/C11_2文件函数 2、C语言中文件操作结束节后,必须关闭文件。而且关闭文件是通过调用__________函数来实现。 答案: 1:fclose#fclose()#fclose() 知识点:知识点/基本理论/C11文件/C11_2文件函数 3、字符串函数________用于从指定的磁盘文件中读出一个字符串。 答案: 1:fgets#fgets() 知识点:知识点/基本理论/C11文件/C11_2文件函数 4、字符串函数___________用于把一个字符串写入指定的磁盘文件中。 答案: 1:fputs#fputs() 知识点:知识点/基本理论/C11文件/C11_2文件函数 5、字符读写函数____________是用于从磁盘文件中读出一个字符。 答案: 1:fgetc#fgetc()#getc#getc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 6、字符读写函数____________是用于把一个字符写入磁盘文件。 答案: 1:fputc#fputc()#putc#putc() 知识点:知识点/基本理论/C11文件/C11_2文件函数 7、共用体类型变量的定义关键字是________。 答案: 1:union 知识点:知识点/基本理论/C10共用体与枚举类型 8、定义枚举类型时采用的关键字是__________。 答案: 1:enum 知识点:知识点/基本理论/C10共用体与枚举类型 9、在C语言中,从参数的形式看,函数可以分为两类:无参函数和____________函数。 答案: 1:有参 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 10、在C语言中,函数的返回值是由___________语句传递的。 答案: 1:return#return() 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 11、在C语言中,按函数在程序中出现的位置可分为以下三种调用方式:函数语句、函数表达式和函数 __________。 答案: 1:参数 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 12、在C语言中,在调用一个函数的过程中又出现__________或间接地调用该函数本身,这一现象称为函数的递归调用。 答案: 1:直接 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 13、在C语言中,若确实不要求返回函数值,则应将函数定义为___________类型。 答案: 1:void 知识点:知识点/基本理论/C6函数与编译预处理/C62函数分类、调用及返回值T 14、在C语言中,假使X为基本整型变量,如果我们采用printf("格式控制",X)格式输出X,那么"格式控制"具体表示为"__"。

C语言1-5章复习题及参考答案

一.选择题 1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。 A .-3 B.9 C.-12 D.6 2、若有定义:int a=8, b=5, c; 执行语句 c=a/b+0.4; 后,c的值为()。 A .1.4 B.1 C.2.0 D.2 3、有如下程序: void main() { int i,sum; for(i=1;i<=3;sum++) sum+=i; printf("%d\n",sum); } 该程序的执行结果是()。 A .6 B.3 C.死循环 D.0 4、下列关于表达式的描述中,错误的是()。 A . 常量和变量都是表达式。 B. 运算符类型对应表达式的类型。 C. 每一个表达式都有自己的值。 D. 表达式必须以分号结尾。 5、C语言中,合法的长整型常数是()。 A . '\t' B.” A” C.65 D.a 6、若已定义 x 和 y为double 类型,则表达式 x=1;y=(x+3)/2 的值是()。 A .1 B.2 C.2.00000 D.2.50000 7、表达式:10!=9的值是()。 A . true B. 非零值 C.0 D.1 8、以下程序的输出结果是()。 #include void main() { printf("%d\n", NULL); } A . 不确定的 B.0 C.-1 D.1 9、请选出合法的C语言赋值语句。() A . a=b=58 B.i++; C. a=58,b=58 D. k=int(a+b); 10、假设 int b=2; 表达式(b>>2)/(b>>1)的值是()。 A .0 B.2 C.4 D.8 11、关于语句printf(“hello world\n”);,下列描述中错误的是()。 A . printf()是格式化输出函数,用于输出信息。 B. printf()括号中的内容为函数的参数。 C. printf()括号中的内容会全部输出到控制台上。 D. \n表示换行操作。 12、下列选项中,哪一项不是C语言中的位运算符()。 A .& B.|| C.~ D.^ 13、以下程序的输出结果是()。 void main()

c语言试题及答案

C语言部分 一、选择题(每小题2分,共10分) (下在各小题,分别有一个或多个正确答案,请将所有正确答案的编号,填写在该小题题干后的括号内。错选或漏选均不得分)。 1、若定义:int a[2][3]{0,2,4,6,8,10};以下描述正确的有( A,C,D, E ) A、*(a+1)为元素6的地址 这里a+1=a[1]的地址;*(a+1)的值是6,故A正确。 B、*(a[1]+1)的值为2 为8,故B不正确 C、**(a+1)+2的值为8 这里a+1是一个指针,指向的是a[1]. *(a+1)为a[1],a[1]指向的是a[1][0]. **(a+1)为6,加2得8,故C正确; D、a[0]与a相同 因二者都是指针,指针的地址都是指向数组中的第一个元素的地址,故D正确。 E、a[1][2]的值为10 它是指第二行的第三个元素,为10,正确 2、对函数的正确使用方法描述( A,C,D )。 A、用数组做函数参数时,必须在主调函数和被调函数中分别定义数组 B、实参数组元素和形参数组元素类型可以不一致 C、形参数组长度可以不指定 D、形参数组长度可以大于实参数组长度 E、数组名做参数属于值传递 3、对静态变量的正确描述( A,B,D,E )

A、静态局部变量在静态存储区内分配单元() B、静态外部变量可以赋初值,也可以不赋初值 C、静态外部变量的作用与外部变量相同 D、静态局部变量在函数调用结束时,仍保存其值,不会随着消失。 E、静态局部变量只赋一次初值 4、下列描述正确的是( A ,C)。 A、由main 函数及其参数argc和* argv[]可以实现命令行方式 B、使用fclose关闭文件时,先释放文件指针,再写缓冲区数据到文件中 //先写缓冲区数据到文件中,再释放文件指针 C、字符数组并不要求它的最后一个字符是‘\0’ //是的,以字符指针指向的字符串才要求,因为只有这样,才能知道字符串的长度,而在字符数组中,不用\0,一样可以知道到哪里是字符数组的结尾。 D、‘A’和“A”都是字符串常量 E、若char*S=“\ta\017bc”;则指针变量S指向的字符串所占的字节数是7 5、在缓冲文件系统中用于读写的函数有( A,B,D ) A、putchar () B、fread() C、rewind () D、purw() E、fseek() 二、程序阅读,并给出运行结果(共10分,每题5分)。 (1)main() { unsigned a,b,x int n; a=0x763 输出结果: n=6;

C语言填空题

1、在考生目录下,给定程序FILL1、C的功能就是: 计算正整数num的各位上的数字之积。 例如,若输入:252,则输出应该就是:20。 若输入:202,则输出应该就是:0。 程序有两个空(1)、(2)需要补充完整。并将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include #include main( ) {long int num,k; /************found************/ _____(1)_______ k=1; clrscr() ; printf("\Please enter a number:") ; scanf("%ld",&num) ; do { k*=num%10 ; /************found************/ _____(2)______ num=num/10 ; } while(num) ; printf("\n%ld\n",k) ; } 2、在考生目录下,给定程序FILL1、C的功能就是:从键盘上输入一个数字组成的字符串(字符串长度小于8),将该字 符串转换成一个十进制数。 例如:从键盘上输入2345,则程序运行的结果应当为: n=2345。 程序有两个空(1)、(2)需要补充完整。请将程序调试出所需的结果。 注意:不要随意改动程序,不得增行或删行,也不得更 改程序的结构! #include "stdio、h" main() { char s[10]; int i; long int n=0; clrscr(); /**************found************/ ___(1)___; scanf("%s",s); /**************found************/ for(i=0;___(2)___;s[i] != ‘\0’ ;i++) n=n*10+s[i]-'0'; printf("n=%ld\n",n);

大学C语言考试题库及答案

精选考试类应用文档,如果您需要使用本文档,请点击下载,另外祝您生活愉快,工作顺利,万事如意! 大学C语言考试题库及答案 姓名成绩 温馨提示:同学们,经过培训学习,你一定积累了很多知识,现在请认真、仔细地完成这张试题库吧。加油! 一单项选择题库 1. 在C语言中,以 D 作为字符串结束标志 A)’\n’ B)’ ’ C) ’0’ D)’\0’ 2.下列数据中属于“字符串常量”的是( A )。 A.“a” B.{ABC} C.‘abc\0’ D.‘a’ 若干个字符构成字符串 在C语言中,用单引号标识字符;用双引号标识字符串 选项B,C,分别用{}和’’标识字符串 选项D,标识字符。 3、以下说法中正确的是( C )。 A、C语言程序总是从第一个定义的函数开始执行

B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B )。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C )。 A.-a1 B.a[i] C.a2_i D.int t 6.下列C语言用户标识符中合法的是(B )。 A)3ax B)x C)case D)-e2 E)union 7.下列四组选项中,正确的C语言标识符是(C )。 A)%x B)a+b C)a123 D)123 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A )。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 9.C语言中的简单数据类型包括(D )。 A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 10.在C语言程序中,表达式5%2的结果是 C 。

C语言练习题(带答案)-绝对经典题目不看后悔

1单选题 1.(A)是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从C开始执行。 A) 程序中第一条可执行语句B) 程序中第一个函数 C) 程序中的main函数D) 包含文件中的第一个函数 3、以下说法中正确的是(C)。 A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是(B)。 A) C程序的工作过程是编辑、编译、连接、运行 B) C语言不区分大小写。 C) C程序的三种基本结构是顺序、选择、循环 D) C程序从main函数开始执行 5.下列正确的标识符是(C)。 A.-a1 B.a[i] C.a2_i D.int t 5~8题为相同类型题 考点:标识符的命名规则 (1)只能由字母、数字、下划线构成 (2)数字不能作为标识符的开头 (3)关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B)。 A)3ax B)x C)case D)-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是(C)。 A)%x B)a+b C)a123 D)123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2) 8、下列四组字符串中都可以用作C语言程序中的标识符的是(A)。 A、print _3d db8 aBc B、I\am one_half start$it 3pai C、str_1 Cpp pow while D、Pxq My->book line# His.age 选项B中的“\”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键

C语言填空题以及答案

1. 一条简单语句是以________字符作为结束符的,一条复合语句是分别以 ________字符和________字符作为开始符和结束符的。 2. 任何一个C++程序至少且只能包含一个________函数,且程序总是从这个函数开始执行,不论这个函数的位置如何。一个函数定义由________和________两部分组成。 3. C++头文件和源程序文件的扩展名分别为________和________。 4. cout与操作符_______配合使用才能显示输出,cin与操作符_____配合使用才能实现输入。 5. 数据类型int,char,bool,float,double, int * 等的类型长度分别为________、________、________、________、________和________。 6. 数值常量46、0173和0x62对应的十进制值分别为________、________和________。 7. 字符串”It\’s\40a\40C++programe!”中包含有__________个字符。 8. 若x=5,y=10,则计算y*=++x表达式后,x和y的值分别为________和 ________。 9. 若x=25,则计算y=x--表达式后,x和y的值分别为________和________。 10. 假定x和ch分别为int型和char型,则sizeof(x)和sizeof(ch)的值分别为________和________。 11. 假定x=64,y=88,则x<<2和y>>2的值分别为________和________。 12. 假定x是一个逻辑量,则x&&true的值与________的值相同,x||false的值也与________的值相同。 13. 假定x是一个逻辑量,则x&&!x和x||!x的值分别为________和________。 14. 假定x=10,则表达式x<=10?20:30的值为________。 15. 表达式sqrt(81)和pow(6,3)的值分别为______________和 ______________。 16. 数学算式(1+x)sin48°和axbex+1对应的算术表达式分别为________和 ________。 17. 逻辑表达式:a>=x||b>2*y+10的相反式为:________。 18. 在嵌套的if语句中,每个else关键字与它前面最接近的________关键字相配套。 19. 在for语句中,假定循环体被执行次数为n,则<表达式1>共被计算________次,<表达式2>共被计算________次,<表达式3>共被计算________次。20. 执行for和while循环时,每次是先进行________的判断,然后再执行 ________,执行do循环时则相反。

(完整版)C语言程序设计选择题库及答案

单项选择题 导读:单项选择题要求从给出的四个备选答案中,选出一个最符合题意的答案。本类习题主要检查对C语言基本概念的掌握情况,读者可根据学习进度选做部分习题。在完成习题的过程中,不但要选出正确的答案,而且要清楚不正确的选项错在何处,以加深对概念的理解。对于掌握不准的问题, 应该通过上机实验来检验。 【1.1】以下不正确的C语言标识符是____。 A) int B) a_1_2 C) ab1exe D) _x 【1.2】以下是正确的C语言标识符是____。 A) #define B) _123 C) %d D) \n 【1.3】下列四组字符串中都可以用作C语言程序标识符的一组是。 ??? A) print B) i\am C) Pxq D) str_l ??? _3d one_half My->book Cpp ??? oodb start$it line# pow ??? aBc 3pai His.age while

【1.4】下面各选项组中,均是C语言关键字的组是。 A) auto,enum,include B) switch,typedef,continue C) signed,union,scanf D) if,struct,type 【1.5】下列不属于C语言关键字的是。A) default B) register C) enum D) external 【1.6】C语言程序从main()函数开始执行,所以这个函数要写在____。 A) 程序文件的开始B) 程序文件的最后 C) 它所调用的函数的前面D) 程序文件的任何位置 【1.7】下列关于C语言的叙述错误的是____ A) 大写字母和小写字母的意义相同 B) 不同类型的变量可以在一个表达式中 C) 在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D) 同一个运算符号在不同的场合可以有不同的含义

C语言考试复习试题及参考答案

中南大学现代远程教育课程考试复习试题及参考答案 C语言程序设计 一、单项选择题 若以下各题所有库函数都可以合法使用,且变量定义如下: int m=5, i=3,j=2,*p, a=8,b=0; int arr[10]={0,1,2,3,4,5,6,7,8,9},td[ ][3]={1,2,3,4,5,6}; float x=2.5,y=3.0; double z=0; long n=1; char c=’A’,ch[20]={’a’,’b’,’c’,’\0’,’d’,’\0’}; struct student { int num; char name[20]; float score; struct student *next; }st1,st2,*ps;

FILE *fp; 1.若将3和10从键盘输入给变量a、x,输入语句为 scanf(“a=%d,x=%f”,&a,&x);正确的键盘输入是(↙表回车): A a=3,x=10↙ B 3,10↙ C 3 10↙ D 3,10.0↙ 2. 以下不是死循环的语句是: A for ( ;;y+=i++); B while(a) y+=i++ ; C do{ y+=i++}while (a>0); D for (b=0;(c=getchar()!=’\n’);)b++; 3.若p=arr;正确的语句是: A *p=arr[10]; B *p=arr[2*a]; C p=arr[5]; D p[i]=arr[0]; 4.若ps=&st1;则下面描述正确的是: A ps->num与st1->num等价。 B ps.num与st1.num等价。 C ps->num与num等价。 D ps->num与st1.num等价。 5.语句printf(“%d",aj);的输出结果是:

C语言试题库(带答案解析)~排版

一、选择题 1、以下不能定义为用户标识符的是( )。 (A) MAIN (B) _HJ (D) LINE1 2、以下不能定义为用户标识符的是( ) (A) If (B) H_J (D) LINE12 3、下面属于C 语言标识符的是( )。 (A) 2ab (B) @f (C) b 4、下列符号中用来表示C 语言中的回车换行的是( )。 (A) \r (C) \b (D) \t 5、在计算机系统中,可执行程序是( ) (A) 源代码 (B)汇编语言代码 (D) ASCII 码 6、在Visual C++ 环境下,C 源程序文件名的默认后缀是( )。 (A) .obj (B) .txt (D) .doc 7、Microsoft Visual C++ 中,C 语言可执行程序的扩展名是:( ) (B) obj (C) c 或cpp (D) txt 8、C 程序由( )组成。 (A)子程序 (B) 主程序和子程序 (D) 过程 9、C 程序的基本组成单位( )。 (A) 数据类型 (B) 变量和常量 (D) 表达式 10、C 语言中主函数的个数是( )。 (A) 2个 (C) 任意个 (D) 10个 11、一个 C 程序的执行是从( ) (B)本程序文件的第一个函数开始,到本程序文件最后一个函数结束. (C)本程序文件的第一个函数开始,到本程序main 函数结束. (D) 本程序的main()函数开始,到本程序文件的最后一个函数结束. 12、以下叙述正确的是 (A)在C 语言程序中,main 函数必须放在其他函数的最前面 (C)在C 语言程序中,只有main 函数才可单独进行编译 (D)每个后缀为.C 的C 语言源程序都应该包含一个main 函数 13、设变量a 是整型,b 是实型,c 是双精度型,则表达式2+’a’+b*c 值的数据类型是( )。 (A) int (B) float 14、以下选项中表示一个合法的常量是(说明:符号□表示空格) A) 9□9□9 C) D) 15、以下选项中非法的字符常量是 A)'\102' B)'\65' C)'\xff' 16、以下选项中,能表示逻辑值“假”的是 A)1 B) D) 17、下列关系表达式中,结果为“假”的是 A)(3+4)>6 C) 3<=4||3 D)(3<4)==1 18、关于C 语言变量,以下说法不正确的是( ) (A) 变量名由程序员定义,必须符合标识符的命名规则。 (B) 变量是程序运行过程中其值可以改变的量。 (D) 变量命名时应尽量做到见名知意。 19、关于C 语言中数的表示,以下叙述正确的是 B)只要在在允许范围内整型和实型都能精确表示 C)只有实型数在允许范围内能精确无误的表示,整型数会有误差 D)只有八进制表示的数在不会有误差 20、设有语句int a=3;,则执行了语句a+=a=a*a;后,变量a 的值是 。 A .3 B .0 C .9 21、在C 语言中,要求运算数必须是整型的运算符是 。 B ./ C .< D .! 22、C 语言中最简单的数据类型包括 。 A .整型、实型、逻辑型 C .整型、字符型、逻辑型 D .整型、实型、逻辑型、字符型 23 、在C 语言中,合法的字符型常量是 。 B ."A" C .65 D .A 24、若已定义x 和y 为double 型变量,则表达式x=1 ,y=x+3/2的值是 。 A .1 B .2 D . 25、设正x 、y 均为整型变量,且x=10,y=3,则以下语句的输出结果是 。 printf("%d,%d\n",x--,--y); A .10,3 B .9,3 C .9,2 26、若有定义int a=8,b=5,C;,执行语句C=a/b+;后,C 的值为 。 A . C . D .2 27、以下选项中,不正确的赋值语句是 。 A .++t; B .n1=(n2=(n3=0)); C .k=i==j; 28、设x 和y 均为 int 型变量,则语句:x+=y,y=x-y;x-=y;的功能是 。 A .把x 和y 按从大到小的顺序排列 B .把x 和y 按从小到大的顺序排列 C .无确定结果 29、以下程序的输出结果是 。 #include <> main() { char c='z'; printf("%c",c-25); } B .Z C .z-25 D .y 30、已知字母A 的ASCII 码为十进制数的65,以下程序的输出结果是 。 #include <> main() { char ch1,ch2; ch1='A'+'5'-'3'; ch2='A'+'6'-'3'; printf("%d,%c\n",ch1,ch2); B .B,C C .C,D D .不确定的值 31、若k 是int 型变量,则以下程序片段的输出结果是 。 k=-3; if(k<=0) printf("####"); printf("&&&&"); B .&&&& C .####&&&& D .有语法错误,无输出结果 32、关于以下程序,说法正确的是 。 #include <> main()

c语言程序填空题完整

三、程序填空题 导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。 【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ① ; b= ② ; a= ③ ; printf("a=%d,b=%d\n",a,b); }

【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。 #include double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ① ; return( ② ); } 【3.3】下面的程序的功能是求一维数组中的最小元素。 findmin(int *s,int t,int *k) { int p; for(p=0,*k=p;p

(完整版)C语言选择题(附答案)

第一单元C语言概述 一、选择题 1、C语言中主函数的个数为(A)个。 A)1 B)2 C)无穷个D)任意个 2、以下关于C语言描述错误的是(D)。 A)一个C程序总是从main函数开始执行T B)每个语句和数据声明的最后必须有一个分号T C)C语言的注释符是以“/*”开始并以“*/”结束的T D)一个C程序可以包含多个main函数F 3、C 语言源程序文件后缀为(C )。 A).EXE B).OBJ C).C D).ASM 4、C语言是由(C )组成的。 A)子程序B)主程序与子程序C)函数D)过程 5、C语言属于(B )语言 A)机器语言B)汇编语言C)高级语言D)面向对象语言 第二单元C语言基础 一、选择题 1、C语言中普通整型变量int在内存中占(B )字节。 A)1 B)2 C)3 D)4 2、下列不是C语言基本数据类型的是(A )。 A)字符型B) 整型 C) 浮点型D) 结构体 3、有关自增、自减运算,以下只有(D )是正确的。 A) ---f B) ++78 C) a—b++ D) d++ 4、已知A=7.5,B=2,C=3.6,表达式(A>B && C>A) || (AB)的值是(A )。 A)0 B)10 C)1 D)5

5、若有x=1,y=2,z=3,则表达式(x=‘A’)&(ch<=‘Z’) C) (ch>=‘A’)&&(ch<=‘Z’) D) (‘A’<= ch)AND(‘Z’>= ch) 7、判断整型变量digit是否为数字的正确表达式是(C )。 A) ‘0’<=ch<=‘9’B) (ch>=‘0’)&(ch<=‘9’) C) (ch>=‘0’)&&(ch<=‘9’) D) (‘0’<= ch)AND(‘9’>= ch) 8、一个C程序的执行是从(A )。 A)本程序的main函数开始,到main函数结柬 B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C)本程序的main函数开始,到本程序文件的最后一个函数结束 D)本程序文件的第一个函数开始,到本程序main函数结束 9、在以下标识符中,合法的是(C ) A)if B)0xy C)_xy D)case 10、C语言中各种类型的数据其实决定了占用内存的字节数。float占(C )。 A)一字节B)二字节C)四字节D)八字节 11、下列各选项中,(A )是有效的标识符。 A)ab B)3day C)day-3 D)#abc 12、以下叙述正确的是(C ) A) 在C程序中,每行只能写一条语句 B) 若a是实型变量,C程序中不允许a=10这种赋值。 C) 在C程序中,%是只能用于整数运算的运算符 D) 在C程序中,无论是整数还是实数,没有什么区别 13、有输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,则正确的数据输入方式是( B )。 A)132↙B)1,3,2↙ C)a=1 b=3 c=2↙D)a=1,b=3,c=2↙ 14、设整型变量a为5,使b不为2的表达式是( C )。 A)b = a/2 B)b = 6-(--a) C)b=a%2 D)b=a>3?2:1

相关文档
最新文档