C语言期末复习题 (1)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基本数据类型

一、选择题

1.下列数据中,不正确的数值或字符常量是()。

A.0.825e2 B.5L

C.0xabcd D.o13

2.以下字符中,不正确的C语言转义字符是()。

A.'\\' B.'\018'

C.'\xaa' D.'\t'

3.已知大写字母A的A SCII码值是65,小写字母a的A SCII码是97,则用八进制表示的字符常量'\101'是()。

A.字符A B.字符a C.字符e D.非法的常量

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

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

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

A.1.2E0.5 B.3.14.159E C..5E-3 D.E15

6.已定义ch为字符型变量,以下赋值中错误的是()。

A.ch='\'; B.ch=62+3; C.ch=NULL; D.ch='\xaa';

7.已定义c为字符型变量,则下列赋值中正确的是()。

A.c='97'; B.c="97"; C.c=97; D.c="a";

8.C语言中最基本的数据类型包括( )。

A.整型、实型、逻辑型 B.整型、实型、字符型

C.整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型

9.在C语言中,合法的字符常量是( )。

A. . '\084' B. '\x43' C. 'ab' D. "\0"

10.已知在ASCII代码中,字母A的序号为65,以下程序的输出结果是( )。

#include

main( )

{char c1='A ', c2='Y '; printf("%d,%d\n" , c1 , c2) ; }

A.输出格式非法,输出错误信息 B.65, 90 C.A, Y D.65, 89

二、填空题

1.C语言中,常量包括_________、_________、_________和_________。

2.C语言中,数据类型包括_________、_________、_________和_________。

3.字符串ab在C语言中表示为。

4. C语言中的变量实际代表内存中的一个______。

5. 在C语言中,整数可用______进制数、______进制数与______进制数3种来表示,以0x打头的是进制数,以0打头的是进制数。

6.若有说明语句:char c=‘\035’;则变量c包含个字符。

三、简答题

1.C语言的基本数据类型有几种,分别是什么,并指出各种数据类型的关键字?

2. 常量和变量的区别是什么?

3. 在程序中如何使用变量?

4.字符和字符串表示形式有什么区别?'a'和"a"有什么不同?9和'9'有何不同?空字符'\0'和空格字符' '有何区别?

运算符与表达式

一、选择题

1.在下列运算符中,优先级最高的运算符是()。

A.<= B.% C.= D.&&

2.若有代数式ae/ bc,则错误的C语言表达式是()。

A.a/b/c*e B.a*e/b*c C.a*e/b/c D.a*e/c/b

3.已知有以下变量定义:

int i=8,k,a,b;

unsigned long w=5;

double x=1.42,y=5.2;

则不符合C语言语法的表达式是()。

A.k=i++ B.(int)x+0.4 C.w+=-2 D.a=2*a=3

4.运行以下程序段后,x的值为()。

int m=3, n=4, x;

x = -m++;

x = x+8/++n;

A.3 B.5 C.-1 D.–2

5.设有以下定义

int a = 0;

double b = 1.25;

char c = 'A ';

#define d 2

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

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

6.设有如下程序段:

int x=2002, y=2003;

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

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

A.输出语句中格式说明符的个数少于输出项的个数,不能正确输出

B.运行时产生出错信息

C.输出值为2002

D.输出值为2003

7.以下非法的赋值语句是()。

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

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

A.6.500000 B.6 C.5.500000 D.6.000000

9.若有以下程序:

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

10.若有定义:

int a=8, b=5, c;

执行语句c=a/b+0.4;后,c的值为()。

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

11.下列选项中哪个是合法的标识符()。

A.char B.5abc C.t_a D._*m2

二、填空题

1.C语言中的表达式包括___________、___________、___________、__________、_________和__________。

2.C语言中的结合方向有__________和___________。

3.若有定义:int a=0;则执行赋值语句a+=a*=a% =a-=15;后变量a中的值是_________。

4.printf("% d\n",(int)(2.5+3.0)/3);的输出结果是_________。

5.设int x=9; 执行 x+=3+x%(-3);后x的值为。

6.假设变量a为整型,则执行a=3+5,a*4;printf("% d\n",a);后的输出结果是________。

7.条件:“0

8.设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为______。

9.在C语言中,要求运算数必须是整型的运算符是。

10.在C语言中,表示逻辑“假”的值用。

11.表达式7>6>5的值为。

12.设a=0,b=1,c=2,则表达式a||b+c&&b==c的值是。

三、计算下列各表达式的值。

1.5/2+5.0/2+7%6

2.a=3,b=4,c=5,a+b>c&&b==c

相关文档
最新文档