首页 理论教育 C语言程序设计实践教程思考练习与测试

C语言程序设计实践教程思考练习与测试

时间:2023-11-01 理论教育 版权反馈
【摘要】:A.4B.16C.32D.52执行下面程序段的输出结果为()。在C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为。A.3.23e03B.3.23e0.3C.3.23E-4D.3.23E0以下选项中,合法的常量是()。A.1B.2C.3D.4以下叙述中,错误的是()。

C语言程序设计实践教程思考练习与测试

一、思考题

1.C语言规定变量必须“先定义、后使用”的目的是什么?

2.字符常量与字符串常量有什么区别?

3.设变量i=10,j=10,k=10, m=10, n=10, 写出下面表达式的值:

(1)i+=i-=i-i (2)j+=j+++j (3)k+=++k+k

(4)m+=m--+m (5)n+=--n+n

4.写出下面表达式的值:

(1)1-‘0’ (2)1-‘\0’ (3)‘1’-0 (4)‘\0’-‘0’

二、练习题

1.选择题

(1)C语言中,基本数据类型是( )。

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

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

(2)下面标识符中,不合法的用户标识符为( )。

A.PAd B.a_10

C._123 D.a#b

(3)下面标识符中,合法的用户标识符为( )。

A.day B.3ab

C.enum D.long

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

A.Float B.signed

C.integer D.Char

(5)下列不合法的字符常量是( )。

A.'\2' B.'"'

C.' ' D.'\483'

(6)下列不正确的字符串常量是( )。

A.'abc' B."12'12"

C."0" D." "

(7)以下符合C语言语法的赋值表达式是( )。

A.d=9+e+f=d+9 B.d=9+e,f=d+9

C.x!=a+b D.a+=a-=(b=4)*(a=3)

(8)若以下变量均是整型,且有语句num=sum=7;,则执行表达式sum=num++,sum++,++num后sum的值是( )。

A.7 B.8

C.9 D.10

(9)若有定义:int a=7; float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是( )。

A.2.500000 B.2.50000

C.3.500000 D.0.00000

(10)已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后,c2中的值为( )。

A.D B.68

C.C D.不确定的值

(11)若有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)

(12)假定编译器为VC++6.0,为了计算s=10!,则定义变量s时应该使用的数据类型是( )。

A.int B.unsigned

C.long D.以上三种类型均可

(13)若x、i、j和k都是int型变量,则执行下面表达式x=(i=4,j=16,k=32)后x的值为( )。

A.4 B.16

C.32 D.52

(14)执行下面程序段的输出结果为( )。

int x=13,y=5; printf("%d",x%=(y/=2));

A.3 B.2

C.1 D.0

(15)执行下面程序段的输出结果是( )。

int x=023,y=5,z=2+(y+=y++,x+8,++x); printf("%d,%d\n",x,z);

A.18,13 B.19,14

C.22,21 D.20,22

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

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

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

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

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

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

A.字符A B.字符a

C.字符e D.非法常量

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

A.6.500000 B.6

C.5.500000 D.6.000000

2.填空题

(1)若有int m=5,y=2;则计算表达式y+=y-=m*=y后的y值是。

(2)在C语言中,一个int型数据在内存中占2个字节,则int型数据的取值范围为。

(3)若s是int型变量,且s=6,则下面表达式的值为。

s%2+(s+1)%2

(4)若a是int型变量,则下面表达式的值为。

(a=4*5,a*2),a+6

(5)若x和a均是int型变量,则计算表达式(a)后的x值为,计算表达式(b)后的x 值为。

(a) x=(a=4,6*2)

(b) x=a=4,6*2

(6)若a是int型变量,则计算下面表达式后a的值为。

a=25/3%3

(7)若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为,n的值为。

(8)若有定义:char c='\010';则变量c中包含的字符个数为。

(9)若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为。

(x+y)%2+(int)a/(int)b

(10)已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-'3'的值为____。(www.xing528.com)

三、测试题

1.选择题

(1)下列选项中合法的标识符是( )。

A.long B._2B

C.VC6.0 D.3num

(2)下列选项中,不合法的标识符是( )。

A.print B.double

C.Main D.Printf

(3)以下选项中,正确的整数常量是( )。

A.5,000 B.018

C.10110111B D.0xFFab

(4)以下选项中,不合法的实型常量是( )。

A.3.23e03 B.3.23e0.3

C.3.23E-4 D.3.23E0

(5)以下选项中,合法的常量是( )。

A.‘\\’ B.‘%%’

C.o13 D.105B

(6)为表示关系:x>=y>=z,应使用的C语言表达式为:( )。

A.x>=y AND y>=z B.x>=y & y>=z

C.x>=z && x>=y D.x>=y && y>=z

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

A.1 B.2

C.3 D.4

(8)以下叙述中,错误的是( )。

A.#include "stdio.h"不是C语句。

B.sizeof( )不是一个函数。

C.++和―― 运算也可看作是赋值语句

D.+、-、*、/、%运算对整型和实型都是有效的。

(9)若已正确定义整型变量,通过输入语句scanf("%d%d%d",&a,&b,&c);给变量a赋值为1,b赋值为2,c赋值为3。不正确的输入形式是( )。

(10)若变量已正确定义并赋值,以下表达式合法的是( )。

A.x+10 = y B.x%int(y)

C.a+b*=c D.x++, y++

(11)有以下程序

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

A.020, 0x10 B.020 0x10

C.20, 10 D.16, 16

(12)有以下程序

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

A.4 B.8

C.16 D.10

(13)若有以下语句:int x = 4;,则表达式x-=x+x的值为( )。

A.-20 B.0

C.10 D.-4

(14)表达式3.7-5/2+1.4+6%5 的值为( )。

A.4 B.3.6

C.4.1 D.3

(15)有以下程序

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

A.3, 0, 3 B.3, 0, 10

C.5, 0, 5 D.5, 3, -5

(16)有以下程序

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

A.12121412 B.12121214

C.10121212 D.10121214

(17)有以下程序

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

A.a=10, b =20 B.a=10, b =

C.编译出错,不能运行 D.a=10 b=20

(18)printf("%c:%d\n", 'A', 'X' -'A');的输出结果是( )。

A.A:24 B.X A

C.A:23 D.X-A

(19)下列运算符中优先级最高的运算符是( )。

A.|| B.!

C.> D.%

(20)已知int a=3, b=4, c=5, 则以下表达式中,值为0的表达式是( )。

A.a&&b B.a<=b

C.a||b+c&&b-c D.!((a<b)&&!c||1)

2.看程序写结果

(1)下面程序的运行结果是( )。

(2)下面程序的运行结果是( )。

(3)下面程序的运行结果( )。

(4)下面程序的运行结果是( )。

(5)下面程序的运行结果是( )。

3.程序填空

(1)下面程序的功能是,输入一个华氏温度,将其换算成摄氏温度并输出换算结果。换算公式为:C=5×(F-32)÷9,请填空。

(2)下面程序的功能是,输入3个整数变量a,b,c的值,计算(a+b)*c的结果输出。请填空。

4.编程题

(1)编写程序,已知“student.”为一符号常量的值,然后将“I am a student.”显示在屏幕上。

(2)编写程序,对从键盘输入的两个不同整数,判断它们的大小,并将较大的数输出。

(3)化学实验室每年需要使用浓度为15%的硫酸溶液6.88公斤,如果用96%的浓硫酸加水稀释后使用,则每年需要多少公斤这种浓硫酸?

(4)设圆的半径1.5,圆柱高3,求圆球表面积、圆球体积、圆柱体积。用scanf输入数值,输出计算结果。输出是要求有文字说明,保留2位小数。

(5)编写程序,从键盘输入在银行的存款年利率和存款总额,计算一年的本息合计并输出。

【注释】

[1]在32位机器中,int类型占4字节。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈