当前位置:文档之家› C语言(1-3章习题)

C语言(1-3章习题)

C语言(1-3章习题)
C语言(1-3章习题)

C 语言1-3 章习题(部分)

、判断题

1、C 程序的注释部分可以出现在程序的任何位置,它对程序的编译和运行

不起任何作用。但是可以增加程序的可读性。(V )

2、自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式。

( V)

3、c 程序可由若干个源程序文件组成。(V )

4、宏替换时先求出实参表达式的值,然后代入形参运算求值。(X )

5、用%s格式符输出字符串时,输出字符不包括结束符’\0 ' o (V )

6、#define 指令是一个预处理编译器指令,不是程序语句,因此,#define 不

能用分号结尾。(V )

7、一个程序应包括对数据的描述和对操作的描述,其中对数据的描述也就

是算法。(X )

8、在C程序中对用到的所有数据都必须指定其数据类型。(V )

9、一个实型变量的值肯定是精确的。(X )

10、d o-while循环的while后的分号可以省略。(X )

11、c 语言中函数定义不允许嵌套,但调用可嵌套。(V )

12、与其他语句一样,预处理命令必须以分号结尾。(X )

13、在一个源程序中,main 函数的位置必须在最开始。(X )

14、函数可以调用自己。(V )

15、scanf函数一次只能读取一个值。(X )

16、一个函数中可以有一个以上的return语句,执行到哪一个return语句,

哪一个语句起作用。(V )

17、字符串“ a”只包含1个字符。(x )

18、在C语言中,要求对所有用到的变量作强制定义,也就是“先定义,后

使用”。(“)

19、C程序中,函数的定义可以嵌套,但函数的调用不可以嵌套。(x )

20、C程序中,无论是整数还是实数,都能被准确无误地表示。(X )

21、一个C源程序中有且仅有一个main ()函数。(V )

22、语句可以用分号或句号结尾。(X)

23、“0”是字串常量,长度为2。(X )

24、3/9和9%3的结果都是0。(V )

25、字符常量是用双引号括起来的一个字符。(X )

26、3/9和9%3的结果都是0。(V )

27、取模运算符%只能用于整数。(V )

28、while语句是先判断循环条件,后执行循环体。(V )

29、所有变量在声明时都必须给定一个类型。(V )

、填空题

1、计算机算法可以用自然语言、流程图和计算机语言(或伪代码)等方法表示。

2、seanf处理输入数据时,遇到下列情况时该数据认为结束:(1)空格或

回车或跳格(Tab)键,(2)非法输入__________ ,(3)按指定的宽度结束。

3、“ n是大于整数m 的奇数”的C 语言表达式是_______________________

n>m&&n%2==1 _________ 。

4、a=12,运行表达式“ a/=a+a”后,a的值为______ 0 ___________ 。

5、C源程序的基本单位是函数。

6、运行C程序的步骤是:编辑源程序一编译,得到目标程序一连接,得

到可执行程序一运行,得到结果。

7、三种基本程序结构是顺序,选择和循环。

8、已知a,b,c是一个十进制数的百位,十位,个位,则该数的表达式是

a*100+b*10+c 。

9、printf函数和scanf函数的格式说明都使用% _____ 字符开始。

10、一般地,调用标准字符或格式输入输出库函数时,文件开头应使用_

stdio.h ______ 头文件。

11、“y能被4整除但不能被100整除,或y能被400整除”的C语言表达式是(y%4==0&&y%100!=0)||(y%400==0)。

12、至少执行一次循环体的循环语句是do-while ______________ 。

13、设x,y,z均为int型变量,描述“x或y中有一个小于z ”的表达式为

x

14、在C语言中的实型变量分为两种类型,它们是单精度、双精度。

15、C语言中要表示条件x>y>z,正确的逻辑表达式是:x>y&&y>z 。

三、单项选择题

1、以下描述正确的是(C )。

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

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

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

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

2、下面四个选项中,不合法的用户标识符选项是(C)。

A._A B._123 C. b-a D.tan

3、下面不正确的字符串常量是(A)。

A.‘bc' B.“12'12” C.“0” D.“ ”

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

A./ B. ++ C.!= D. %

5、表达式18/4*sqrt(4.0)/ 8 值的数据类型为(C )。

A. int

B. float

C. double D .不确定

6、C 语言中,函数返回值类型的定义可以缺省,此时函数值的隐含类型是(B )

A. void

B. int

C. float

D. double

7、已知ch是字符变量,下面不正确的赋值语句是(A)。

A. ch='a+b';

B. ch='\0 ';

C.

ch='7'+'9';

D . ch =5+9 ;

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

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

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

C. 无确定结果

D .交换 x 和 y 中的值

9、一个 C 语言的语句至少应包一个( C )。

A . {} B. 逗号 C. 分号 D. 什么不要

9、算法的确定性是指( B )

A. 算法应包含有限的操作步骤

B. 算法中的每一个步骤都应当是确定的

C. 在执行算法时需要从外界取得必要的信息

D. 算法中的每一个步骤都应当能有效地执行,并得到确定的结果

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

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

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

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

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

11、 已知梯形的上底为a,下底为b ,高为h ,用C 语言写的正确的面积公式 是( B )。

A 1/2*(a+b )*h

B 1.0/2*(a+b )*h

C 1.0/2.0(a+b )h

D 1.0/2*a+b*h

12、 已有定义char s1,s2;,下面正确的语句是(C )。 A scanf( “ %s%c ” ,s1,s2);

B scanf( “ %s%c ”

,s1,&s2);

C scanf(“ %c%c

,&s1,&s2);

D scanf(“ %s%c

,s1,s2);

13、为下面的程序输入数据,使得i=10,k= ' a',j=15,正确的键盘输入方法是( D )。

#include

void main ()

int i,j,k;

scanf ( “ %d%c%d ”,,&ki,&j);

printf ( “ i=%d,j=%c,k=%n ”d ,i,k,j);

}

A 10,a,15<@车 >

B 10<回车 >a< 回车 >15< 回车>

C 10' a ' 15< 回车

D 10a15<0车 >

14、设整型变量 x 、y 、z 的值分别为 3、2、 1,则下列程序段的输出是(

C ) If (x>y ) x=y;

if (x>z ) x=z;

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

A 3,2,1

B 1,2,3

C 1,2,1 15、 putchar 函数可以向终端输出一个(

A. 整型变量表达式值

C. 字符串

16、 一个 C 语言程序是由( B )。

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

C .若干过程组成

17、 在C 语言中,char 型数据在内存中的存储形式是(D )。

A .补码

B .反码

C .原码

D . ASCII 码

18、 若有以下定义,则正确的赋值语句是( B )。

int a , b ; float x ;

A .a=1 , b=2 ,

B . b++ ;

C .a=b=5

D .b=int ( x );

19、若变量c 为char 类型,能正确判断出c 为小写字母的表达式是(D )

D 1,1,1

D )。

B. 实型变量值

D. 字符或字符型变量值

B ?函数组成

D .若干子程序组成

相关主题
文本预览
相关文档 最新文档