C语言习题

发布时间 : 星期一 文章C语言习题更新完毕开始阅读

(36) C语言俗称\低级语言的高级形式\,这说明C语言的功能不强。(×) (37) C语言是一种结构化程序设计语言。(√) (38) C语言是一种面向对象的程序设计语言。(×) (39) C程序总是从程序的第一条语句开始执行。 (40) C语言的祖先是B语言。(√)

第二章

数据类型、运算符与表达式

一、选择题

(1)下列叙述正确的是( )。

A. C语言中既有逻辑类型也有构造类型数据 B. C语言中没有逻辑类型,但有构造类型 C. C语言中有逻辑类型,但没有构造类型 D. C语言中既没有逻辑类型也没有构造类型

(2) 下列关于C语言用户标识符的叙述中正确的是( )。 A. 用户标识符中可以出现下划线和中划线(减号) B. 用户标识符中不可以出现中划线,但可以出现下划线 C. 用户标识符中可以出现下划线,但不可以放在标识符开头

D. 用户标识符中可以出现下划线和数字,他们都可以放在标识符开头 (3) 下列转义字符中,错误的是( )。

A. ?\\0xa5? B. ?\\031? C. ?\\b? D. ?\\”?

(4) 字符串 “\\\\\\\\1234\\\\\\\\\\n” 在内存中占用的字节数是( )。 A. 14 B. 9 C. 10 D. 1

(5) 已知梯形的上底为a, 下底为b,高为h,用C语言写的正确的面积公式是( )。 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 (6) 与k=n++完全等价的表达式是( )。

A. n=n+1, k=n B. k+=n+1 C. K=++n D. k=n, n=n+1 (7) 在C语言中int, char和short int三种类型变量所占用的内存大小是( )。

A. 均为2个字节 B.由用户自己定义 C.由所用机器的字长决定 D.是任意的 (8)若有以下类型说明语句char a; int b; float c; short int d; 则表达式c*b+a*d的结果类型是 ( )。

A.char B.int C.double D.float

(9)若有说明语句int w=1,x=2,y=3,z=4; 则表达试w>x?w:z>y?z:x的值是( )。  A.4 B.3 C.2 D.1

(10)设x,y 为int型变量,则执行下列语句后y的值是( )。   x=5; y=x++*x++; y=--y*--y;

A.625 B.2401 C.1209 D.529 (11)下面的符号常量定义中,正确的是( )。

A.#define PI 3.14; B.#include PI 3.14;

C.#define PI=3.14 D.#define PI 3.14 (12) 指出下面合法的标识符( )。

A. 3ab B. int C. ABC D.#abc

(13) 指出下面( )是保留字。

A.char B. abc C. printf D.Int

(14) 下面( )个数据类型不是C语言的基本数据类型。 A. 整型 B. 枚举型 C. 指针型 D. 字符型 (15) 这段程序中,不是常量的有( )。 #define PI 3.14 void main() {

int sum;

sum = 10 + 15;

printf(\ printf(\ }

A. 10 B. sum C. 15 D. PI

(16)如果要把常量327存入变量a中,a不能定义成( )类型 A. int B. char C. long D. float (17)下面哪个表达式的值为4。

A. 11/3 B. 11.0/3 C. (float)11/3 D. (int)(11.0/3+0.5)

(18)设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是( )。 printf(”%d,%d\\n”,x--,--y);

A. 10,3 B. 9,3 C. 9,2 D. 10,2 (19) 指出下面错误的表达式( )。

A. 5.6+6.2%3.1 B. 2 C.a=4 D. a=5,b=6,c=7

(20) 已知a为整型变量,那么与表达式 a!=0 真假值情况不相同的表达式有( )。 A. a>0||a<0 B. a C. !a==0 D. !a (21)下面( )是非法的C语言转义字符。

A. '\\t' B. '\\08' C. '\\xaf' D. '\\\\' (22)若有以下说明语句: char s='\\\\\\092';

则下面( )是正确的.

A. 使s的值包含2个字符 B. 说明语句不合法

C. 使s的值包含6个字符 D. 使s的值包含4个字符 (23)若k,g均为int型变量,则以下语句的输出为( )。 int k,g; k=o17; g=111;

printf(\ printf(\

A. 15,6f B. f,6f C. f,111 D. 15,111

(24) 请从下面的选项中选出不正确的C语言的转义字符。( ) A. '\\t' B. '\\'' C. '//' D. '\\n' (25)( )是C语言提供的合法的数据类型关键字。

A.Float B. signed C. integer D.Char

(26) 在C语言中,要求参加运算的数必须时整数的运算符是( ) 。

A./ B.* C.% D. =

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

A.原码 B.BCD码 C.反码 D.ASCII码 (28) 在C语言中,整型数据在内存中以( )形式存放。

A.原码 B.BCD码 C.反码 D.补码

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

A. VAR B. cher C. integer D. default (30) 以下有4组用户标识符,其中合法的一组是( )。 A. For B.4d C.f2_G3 D.WORD

sub DO IF void Case Size abc define

(31)以下选项中,非法的字符常量是( )。

A.‘\\t’ B.‘\\17’ C.“n” D.‘\\xaa’ (32)以下选项中合法的字符常量是( )。

A.“B” B.‘\\010’ C. 68 D. A (33)在C语言中,合法的长整型常数是( )。

A. 0L B. 4962710 C. 324562& D. 216D (34) 下列变量定义中合法的是( )。

A. short _a=1-.le+1; B. double b=1+5e2.5;

C. long do=0xfdaL; D. float 2_and=1-e-3; (35)以下所列的C语言常量中,错误的是( )。

A. 0xFF B.1.2e0.5 C. 2L D.‘\\72’ (36)设有说明语句:char a=’\\72’,则变量a( )。

A. 包含1个字符 B.包含2个字符 C.包含3个字符 D.说明不合法 (37)下列不正确的转义字符是( )。

A. '\\\\' B. '\\' ' C. '074' D. '\\0' (39)以下选项中属于C语言的数据类型是( )。

A.复数型 B.逻辑型 C.双精度型 D.集合型 (40) 设有 int x=11; 则表达式 (x++ * 1/3) 的值是

A. 3 B. 4 C.11 D. 12 (41) 下列程序的输出结果是( )。

A. 3 B.3.2 C.0 D.3.07 void main() { double d=3.2;

int x,y; x=1.2;

y=(x+3.8)/5.0; printf(\ }

(42) 设 int x=1, y=1; 表达式(!x||y--)的值是( )。

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

(43) 若变量已正确定义并赋值,下面符合C语言语法的表达式是( ) A. a:=b+1 B. a=b=c+2 C int 18.5%3 D. a=a+7

(44) C语言中运算对象必须是整型的运算符是( )。 A. %= B. / C. = D.<=

(45) 若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是( )。 A. 1 B. 2 C. 2.0 D. 2.5

(46) 若变量a、i已正确定义,且i已正确赋值,合法的语句是 A. a==1 B. ++i; C. a=a++=5; D) a=int(i);

(47) 若有以下程序段, int c1=1,c2=2,c3; c3=1.0/c2*c1; 则执行后,c3中的值是 A. 0 B. 0.5 C. 1 D. 2 (48) 能正确表示逻辑关系:“a≥=10或a≤0”的C语言表达式是( )。

A. a>=10 or a<=0 B. a>=0|a<=10 C. a>=10 &&a<=0 D. a>=10‖a<=0 (49) 设x、y、t均为int型变量,则执行语句:x=y=3; t=++x||++y;后,y的值为( )。 A.不定值 B. 4 C. 3 D 1

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

A. ‘a’<=c<= ‘z’ B. (c>= ‘a’)||(c<= ‘z’) C. (‘a’<=c)and (‘z’>=c) D. (c>= ‘a’)&&(c<= ‘z’)

二、判断题

(1)C语言程序的变量必须先定义再使用。 (√ )

(2)C语言认为名为Student和student的变量是不同变量。 (√ ) (3)C语言中,字符常量可以用单引号或双引号括起来。 (× )

(4)设一个C系统的float型有效数字是7位,则超过7位数的运算是不准确的。(√ ) (5)C语言与其他高级语言一样具有结构化的控制语句。(√ ) (6)在C程序中对用到的所有数据都必须指定其数据类型。(×) (7)一个变量在内存中占据一定的存储单元。(√) (8)一个实型变量的值肯定是精确的。(×)

(9)对几个变量在定义时赋初值可以写成:int a=b=c=3;(× )

(10)自增运算符(++)或自减运算符(--)只能用于变量,不能用于常量或表达式。(√) (11)在C程序的表达式中,为了明确表达式的运算次序,必须使用括号“()”。(×) (12)%运算符要求运算数必须是整数。(√)

(13)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数。(×) (14)在C程序中,逗号运算符的优先级最低。(√) (15)C语言不允许混合类型数据间进行运算。(×)

(16)数据是操作的对象,操作的结果会改变数据的状况。(√) (17)字符型变量用来存放字符常量,注意只能放2个字符。(×) (18)C语言中可以把一个字符串赋给一个字符变量。(×)

(19)在C语言中的实型变量分为两种类型,它们是float(实型)和double(双精度实型)。

(×)

(20)在C语言中,要求参加运算的数必须是整数的运算符是% 。(√)

(21)若有以下定义,则执行下面表达式y+=y-=m*=y后,y的值为-6。int m=5,y=2; (√) (22)输入语句的格式为:scanf(\是正确的。 (×)

(23)在scanf(\函数中,可以使用一个或多个空格作为两个输入数之间的间

隔。 (×)

(24) getchar函数的功能是接收从键盘输入的一串字符。(×)

(25) 在变量说明中给变量赋初值的方法是:int a=10,b=10; (√)

联系合同范文客服:xxxxx#qq.com(#替换为@)