C语言期末复习题答案.docx

上传人:b****4 文档编号:3067415 上传时间:2022-11-17 格式:DOCX 页数:24 大小:33.01KB
下载 相关 举报
C语言期末复习题答案.docx_第1页
第1页 / 共24页
C语言期末复习题答案.docx_第2页
第2页 / 共24页
C语言期末复习题答案.docx_第3页
第3页 / 共24页
C语言期末复习题答案.docx_第4页
第4页 / 共24页
C语言期末复习题答案.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

C语言期末复习题答案.docx

《C语言期末复习题答案.docx》由会员分享,可在线阅读,更多相关《C语言期末复习题答案.docx(24页珍藏版)》请在冰豆网上搜索。

C语言期末复习题答案.docx

C语言期末复习题答案

基本数据类型

一、选择题

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

A.0.825e2B.5L

C.0xabcdD.o13

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

A.'\\'B.'\018'//p19//8进制里没有8以上的数字

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

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

A.字符AB.字符aC.字符eD.非法的常量

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

A.10110BB.0386C.0XffaD.x2a2

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

A.1.2E0.5B.3.14.159EC..5E-3D.E15//p18

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.整型、实型、字符型//P14图2.1

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

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

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

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

#include

main()

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

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

二、填空题

1.C语言中,常量包括_整型常量、_实型常量_、字符型常量__和_字符串常量__。

2.C语言中,数据类型包括基本类型、构造类型、指针类型、空类型。

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

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

//P16

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

//P17

6.若有说明语句:

charc=‘\035’;则变量c包含1个字符。

三、简答题

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

int\float\char//

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

//不变/变

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

//先定义,后使用

4.字符和字符串表示形式有什么区别?

'a'和"a"有什么不同?

9和'9'有何不同?

空字符'\0'和空格字符''有何区别?

//””\’’字符:

一个字节。

字符串:

最少两个(双引号里面字符个数+1)

运算符与表达式

一、选择题

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

//P28

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

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

//P24

A.a/b/c*eB.a*e/b*cC.a*e/b/cD.a*e/c/b

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

inti=8,k,a,b;

unsignedlongw=5;

doublex=1.42,y=5.2;

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

A.k=i++B.(int)x+0.4C.w+=-2D.a=2*a=3//赋值号左边只能是变量,不能是表达式//P25

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

//P25//++使变量的值

intm=3,n=4,x;

x=-m++;

x=x+8/++n;

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

5.设有以下定义

inta=0;

doubleb=1.25;

charc='A';

#defined2//d为符号常量,++必须是变量

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

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

 

6.设有如下程序段:

intx=2002,y=2003;

printf("%d\n",(x,y));//(x,y)逗号表达式值2003

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

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

B.运行时产生出错信息

C.输出值为2002

D.输出值为2003

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

A.n=(i=2,++i);B.j++;C.++(i+1);D.x=j>0;//++只能为变量,i+1是表达式

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

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

9.若有以下程序:

//26

main()

{

intk=2,i=2,m;

m=(k+=i*=k);

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

}

执行后的输出结果是()。

A.8,6B.8,3C.6,4D.7,4

10.若有定义:

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

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

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

//P14

A.charB.5abcC.t_aD._*m2

二、填空题

1.C语言中的表达式包括算术表达式、关系表达式、逻辑表达式、逗号表达式、条件表达式和赋值表达式。

//P24

2.C语言中的结合方向有自左向右和_自右向左。

3.若有定义:

inta=0;则执行赋值语句a+=a*=a%=a-=15;后变量a中的值是__0__。

//P26

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

//5/3=1

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

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

7.条件:

“00&&x<8)||(x<=-4)_。

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

//x/y=0

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

//24

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

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

//7>61>5//P27

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

//P29

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

1.5/2+5.0/2+7%6//5.5//2+2.5+1

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

3.a=3*5,a*4,a+5//20

4.5>2>1//0

四、编程题

1.输入一个整数,取出它的个位数部分。

//n%10

2.输入一个浮点数,分别输出它的整数部分和小数部分。

顺序结构程序设计

一、选择题

1.请选出合法的C语言赋值语句()。

A.a=b=58B.(i+1)++;C.a=58,b=58D.k=(int)a+b;//分号结束

2.以下选项中,不正确的赋值语句是()。

A.t=t+1;B.n1=(n2=(n3=0));

C.k=i=j;D.a=b+c=1;

3.若有定义:

inta,b,c;,要给变量a,b,c输入数据,正确的输入语句是()。

A.scanf("%d%d%d",&a,&b,&c);

B.scanf("%D%D%D",&a,&b,&c);

C.read(a,b,c);

D.scanf("%d%d%d",a,b,c);

4.阅读程序:

#include

main()

{

inta;floatb,c;

scanf("%2d%3f%4f",&a,&b,&c);//p41

printf("\na=%d,b=%f,c=%f",a,b,c);

}

若运行时从键盘上输入987654321↙,则程序的输出结果是()。

A.a=98,b=765,c=4321B.a=98,b=765.000000,c=4321.000000

C.a=98,b=765.0,c=4321.0D.a=98.0,b=765.0,c=4321.0

 

5.已知字母A的ASCII码为十进制的65,下面程序的输出结果是()。

#include

main()

{

charch1,ch2;

ch1='A'+'5'-'3';

ch2='A'+'6'-'3';

printf("%d,%c\n",ch1,ch2);

}

A.67,DB.B,CC.C,DD.不确定的值

6.设有如下定义:

intx=10,y=3,z;

则语句:

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

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

7.若有以下定义和语句:

charc1='b',c2='e';

printf("%d,%c\n",c2-c1,c2-'a'+'A');

则输出结果是()。

A.2,MB.3,EC.2,ED.输出结果不确定

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

A.输入项可以是一个实型常量,例如:

scanf("%f",3.5);

B.只有格式控制,没有输入项,也能正确输入数据到内存,例如:

scanf("a=%d,b=%d")

C.输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:

scanf("%4.2f",&d);

D.当输入数据时,必须指明变量地址,例如:

scanf("%f",&f);

二、填空题

1.结构化程序设计所规定的三种基本控制结构是顺序结构、选择结构、循环结构结构。

2.输出字段宽为4的十进制数应使用%4d,字段宽度为6的十六进制数应使用 %6x ,八进制整数应使用%6o ,字段宽度为4的字符应使用 %4c ,字段宽度为8,保留3位小数的实数应使用 %8.3f  ,字段宽度为5的字符串应使用 %5s 。

//p37

3.若有定义:

intx=0;,则执行赋值语句:

x=(x=3+5,x*5);后,变量x中的值是__40__。

4.下面程序的输出结果是_17,21,11_____。

#include

main()

{intk=17;

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

当前位置:首页 > 工程科技 > 环境科学食品科学

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

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