当前位置:文档之家› C语言第二章习题

C语言第二章习题

C语言第二章习题
C语言第二章习题

1. 以下叙述中错误的是 (

)。

2.以下可以将任意一个两位整数 n 的个位数与十位数对换的表达式为(

3. 以下叙述中错误的是

4.若有定义int x , y ;并已正确给变量赋值,则以下选项中与表达式

(X — y)(x ++ ) : (y +

+)中的条件表达式 (x —y) 等价的是 (

5. 有以下程序

A)

使用三种基本结构构成的程序只能解决简单问题 B)

结构化程序由顺序、分支、循环三种基本结构组成

C) C 语言是一种结构化程序设计语言

D)

结构化程序设计提倡模块化的设计方法

A) (n-n/10*10)*10+n/10

B) n-n/10*10+n/10

C) n/10+(n-n/10)

D) (n-n/10)*10+(n/10)

A)

算法正确的程序可以有零个输入 B)

算法正确的程序最终一定会结束 C)

算法正确的程序可以有零个输出

D)

算法正确的程序对于相同的输入一定有相同的结果

A) (x - y<0||x - y>0)

B) (x -y<0) C) (x -y>0)

D) (x —y = = 0)

)。

8. 请选出以下语句的输出结果: ( )

6. 请选出合法的 C 语言赋值语句:(

A) a=b=58

示代数式 1/abc 的表达式是: (

A) 1/a*b*c

B) 1/(a*b*c)

C) 1/a/b/(float)c

D) a/b/c

#include <> main() { int a; a =

(int)*3; printf("%d\n", a); 程序的运行结果是( A)

B)

C)

D)

结果不确定

B) i++; C) a=58,b=58

D) k=int(a+b)

7. 假设在程序中 a,b,c 均被定义成整型

,并且已赋大于 1的值,则下列能正确表

printf("%d\n",strlen("\t\"\065\xff\n")); 选出以下语句的输出结果: ( 8. 请选出以下语句的输出结果: ( )

printf("%d\n",strlen("\xffff"));

A)1 B) 2 C) 3 D)5

10. 有如下程序段,其输出结果是什么:(<。只>表示输出回车符)( main( )

{int a=1,b=3,c=5;

if (c=a+b)

printf ("yes\n");

elseprintf("no\n"); }

A) yes B)no C) yes\n D) no\n

11. 以下说法中正确的是( )

A) C 语言程序总是从第一个的函数开始执行

B) 在 C 语言程序中, 要调用的函数必须在main() 函数中定义

C) C 语言程序总是从main() 函数开始执行

D) C 语言程序中的main() 函数必须放在程序的开始部分

12. 逻辑运算符两侧运算对象的数据类型

A) 只能是0 和 1

B) 只能是0或非0正数

C) 只能是整型或字符型数据

D) 可以是任何类型的数据

13. 以下叙述中错误的是 ()

A) C 语句必须以分号结束

B)复合语句在语法上被看作一条语句

C)空语句出现在任何位置都不会影响程序运行

D)赋值表达式末尾加分号就构成赋值语句

14.已知a=5,b=6,c=7,d=8,m=2,n=2 ,执行(m=a>b)&&(n=c

A) 2

B)0

C) 1

D)-1

15.设变量已正确定义并赋值,以下正确的表达式是()

A) x = y+ z + 5,+ + y

B) int%5)

C) x = y*5 = x+ z

D) x = 25%

16.若有定义语句:int x = 10;,则表达式x-= x + x的值为()

A)

B) -20

C) -10

D) 10

17. 有以下程序

#include <> main( ) { int c, d;

c = 10人3;

d = 10+3;

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

程序运行后的输出结果是(

A)13,13

B)9,13

C)10,13

D)103,13

则表达式:x+a%3*(int)(x+y)%2/4 的值是:( )

18. 若有定义:int a=7;float x=,y=;

A)

B)

C)

D)

19.已知x=43,ch= ' A ,y=0,则表达式(x>=y&&ch< ' B' &&!y)的值是:()

A)0

B)语法错误

C) 1

D)” 假”

Inta,b;

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

25. 下列表达式中 , 不满足”当 x 的值为偶数时值为真 , 为奇数时值为假”的要求的是 ()

printf( “%d ”,(a=2)&&(b= -2));

则输出的结果是 ()

A) 无输出 B) 结果不确定 C)1 D)-1

int a=2,b=3;

22. 下列运算符中,结合方向为自左向右的是(

B) , (C )+ = (D )+ +

23. 设 x 、y 、 z 均为 int 型变量 , 则执行以下语句后 ,x 、y 、z 的值为()

x=1;y=0;z=2; y++&&++z||++x;

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

int y=10;

y+=y-=y-y;

则 y 的值是()

A)x%2==0

B)!x%2!=0A )10 B )20 C ) 30 D

)40

21. 以下语句的输出结果是

()

printf(a>b ”***a=%d ”: ” ###b=%d ”,a,b);

A)输出结果格式错误

B)***a=2

C)###b=2

D) ###b=3

A)2 、1、 3 B )2、0、3 C

)2、1、 3 D )2、1、2

}

C) (x/2*2-x)==0 D)!(x%2)==0 26.以下能正确定义整型变量 a,b 和c 并为其赋初值1的语

句是()

A) int a=b=c=1; B) inta,b,c=1; C) a=b=c=1; D) int a=1,b=1,c=1; 27.字符串 "\t\065\xff\n" 中的字符数 (不算' \0'

28. 若有以下定义:

chara;int b;

float c;double d;

则表达式 a*b+d-c 值的类型为 ( )

为真, 0 为假 B) x/2 C) x%2!=0 D) x%2==0

31. 有以下程序

main() char a='a',b;

printf("%c,",++a);

printf("%c\n",b=a++);

) 为( )

A) 5

B) 14 C) 8

D) 4

A) float double

B) int

C) char(

字符型 )

D)

29. 在 C 语言中, 运算对象必须是整型数的运算符是

A) % B) /

C) % 和 \

D) **

30. 以下选项中,

x 为大于 1 的奇数时,值为 0 的表达式是

A) x%2==1

程序运行后的输出结果是()

32. 写出下面程序的值.

#in clude<> void mai n() int a=10,b=4;

prin tf("%d \n",a%=(b%=3));

A ) 0 B) 1 C) 10

D)2

注连续赋值操作从右向左进行

33.

设a,b 和c 都是int 型变量,且a=3,b=4,c=5,则下面的表达式中值为

0的是()

A. ?a?&&?b?

B. a<=b

C. a||b+c&&b-c

D. !((a

34. 请选出可用作C 语言用户标识符的一组标识符: A) void defi ne WORD

x 和y 为double 类型,则表达式:x=1,y=x+3/2 的值是:

B) 2

D)

36.有如下程序

mai n()

{ int y=3,x=3,z=1;

print f( “%d %d n ” ,(++x,y++),z+2);

}

运行该程序的输岀结果是:

A) b,b B) b,c C) a,b

D) a,c

B) a3_b3 C) For D) 2a _123 -abc DO

IF

Case sizeof

35.若已定义 A)1 C)

A) 3 4 B) 4 2

C) 4 3 D) 3 3

37.当c 的值不为0时,在下列选项中能正确将 c 的值赋给变量a 、b 的是: A)c=b=a ; B)(a=c) II (b=c); C)(a=c)&&(b=c)

; D)a=c=b ; 38. 在以下一组运算符中 , 优先级最高的运算符是: A) C)% <= B)= D)&& 39. 有以下程序 #include main()

{ int a,b,c=246; a=c/100%9; b=(-1)&&(-1); printf("%d,%d\n",a,b); } 输出结果是: A) 2,1 B) 3,2 C) 4,3 D) 2,-1

40. 若要求在 if 后一对圆括号中表示 A)a<>0

B)!a C)a=0 D)a a 不等于 0 的关系 , 则能正确表示这一关系的表达式为:

41、以下选项中,能用作数值常量的是 (A) 0115 ( B ) 0118 ( C ) 115L ( D )下列叙述中错误的是 (A ) —个C 语言程序只能实现一种算法 (B) —个C 函数可以单独作为一个 C 程序文件存在 (C) C 程序可以由一个或多个函数组成 (D) C 程序可以由多个程序文件组成 43、设变量已正确定义并赋值,以下正确的表达式是 (A )int%5) (B )x=y+z+5, ++y (C )x=25% (D )x=y*5=x+z 44、以下叙述中错误的是

( A ) ( B ) ( C )

( D )

o C 语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令 C 语言源程序经编译后生成后缀为 .obj 的目标程序 用 C 语言编写的程序称为源程序,它以 ASCII 代码形式存放在一个文本文件中 C 程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件

2o C 语言中的标识符可分为 、和预定义标识符三类。

45、按照 C 语言规定的用户标识符命名规则,不能出现在标识符中的是

写字母 (B )下划线 (C )数字字符 (D )连接符

46、以下选项中,合法的一组 C 语言数值常量是 _______________ 。

( A ) 0x8A 10,000 ( B ) .177 0abc ( C ) 028 .5e-3 -0xf 47 以下选项中不合法的标识符是 ___________

( A ) print ( B ) FOR ( C ) &&a ( D ) _00

48、若有定义: double a=22;int i=0,k=18; ( A ) i=(a+k)<=(i+k);

( B ) a=a++,i++;

,则不符合 C 语言规定的赋值语句是

C) i=a%11; ( D ) i=!a;

50、有以下程序 #include <> main()

{ int x, y, z; x=y=1;

z=x++,y++,++y;

printf("%d,%d,%d\n",x,y,z); } 程序运行后的

输出结果是

( A ) 2,3,3 ( B ) 2,2,1 ( C ) 2,3,2

填空题

49、设有定义: int x=2; ,以下表达式中, ( A ) x*=(1+x)

( B ) x*=x+1 ( C ) x++,2*x

值不为 D ) 6 的是

2*x, x+=2

1。函数体由符号

是 ___ 部分。

开始, 用符号 结束。函数体的前面是 部分,其后

D ) 12. 0Xa23 7

D ) 2,3,1

c语言程序设计第二章课后参考答案

第二章:C程序的基本结构 一、单项选择题 1、以下不是C语言的特点的是________。 A)语言的表达能力强B)语言定义严格 C)数据结构系统化 D)控制流程结构化 2、TC编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是________。 A)编辑和编译 B)编译和连接 C)连接和运行D)编辑和运行 3、以下不是二进制代码文件是________。 A)标准库文件 B)目标文件C)源程序文件 D)可执行文件 4、下面个选项组中,均属于C语言关键字的一组是________。 A)auto,enum,include B)switch,typedef,continue C)signed,union,scanf D)if,struct,type 5、下面四组字符串中,都可以用作C语言标识符的是________。 A)print B)I \am C)signed D)if _maf scanf 3mf ty_pr mx_2d mx_ a.f x1# aMb6 AMB A&B 5XY 6、以下不属于流程控制语句的是_________。 A)表达式语句 B)选择语句 C)循环语句 D)转移语句 7、下面描述中,不正确的是________。 A)C语言的函数体由一系列语句和注释组成。 B)注释内容不能单独写在一行上。 C)C程序的函数说明部分包括对函数名、函数类型、形式参数等的定义和说明。 D)scanf和printf是标准库函数而不是输入和输出语句。 8、下面描述中,正确的是________。 A)主函数的花括号必须有,而子函数中的花括号是可有可无的。 B)一个C程序行只能写一个语句。 C)主函数是程序启动时的唯一入口。 D)函数体包含了函数说明部分。 二、填空题 1、一个完整的C程序至少要有一个________函数。(主函数) 2、标准库函数不是C语言本身的组成部分,它是由__________提供的功能函数。(编译系统) 3、C语言是以________为基本单位、整个程序由________组成。(函数函数) 4、常用的标准库函数有数学函数、字符函数和字符串函数、动态分配函数、随机函数和________函数等几个大类。(输入输出) 5、标准库函数存放在________文件中。(函数库) 6、目标程序文件的扩展名是________。(.obj) 7、程序连接过程是将目标程序、________或其它目标程序连接装配成可执行文件。(库函数) 8、因为源程序是________类型文件,所以用具有文本编辑功能的任何编辑软件程序完成编辑。(文本)

C语言PTA平台习题与答案

第二章作业 1 ①.本题要求编写程序,输出一个短句“Welcome to You!” #include int main() { printf("Welcome to You!\n"); return 0; } ②.本题要求编写程序,计算华氏温度100°F对应的摄氏温度。计算公式:C=5×(F?32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型。 fahr = 100, celsius = 计算所得摄氏温度的整数值 #include int main() { int fahr = 100; int celsius = 5*(fahr-32)/9; printf("fahr = 100,celsius = %d\n",celsius); return 0; } 第二章作业2 ①求整数均值本题要求编写程序,计算4个整数的和与平均值。题目保证输入与输出均在整型范围内。 在一行中按照格式“Sum = 和; Average = 平均值”顺序输出和与平均值,其中平均值精确到小数点后一位 #include int main() { int a,b,c,d,Sum; double Average; scanf("%d %d %d %d",&a,&b,&c,&d); Sum = a + b + c + d; Average = (a + b + c + d)/4.0; printf("Sum = %d,Average = %.1f\n",Sum,Average); return 0; } ②整数四则运算本题要求编写程序,计算2个正整数的和、差、积、商并输出。题目保证输入和输出全部在整型范围内 输入在一行中给出2个正整数A和B。 在4行中按照格式“A 运算符 B = 结果”顺序输出和、差、积、商。 #include int main() { int a; int b; scanf("%d %d",&a,&b); printf("%d + %d = %d\n",a,b,a+b); printf("%d - %d = %d\n",a,b,a-b); printf("%d * %d = %d\n",a,b,a*b);

第二章 C语言习题

第二单元顺序程序设计 一.选择题 1.若m为float型变量,则执行以下语句后的输出为。 m=1234.123; printf("%-8.3f\n",m); printf("%10.3f\n",m); A. 1234.123 B. 1234.123 C. 1234.123 D. -1234.123 1234.123 1234.123 1234.123 001234.123 2.若x,y,z均为int型变量,则执行以下语句后的输出为。 x=(y=(z=10)+5)-5; printf("x=%d,y=%d,z=%d\n",x,y,z); y=(z=x=0,x+10); printf("x=%d,y=%d,z=%d\n",x,y,z); A. X=10,Y=15,Z=10 B. X=10,Y=10,Z=10 X=0,Y=10,Z=0 X=0,Y=10,Z=10 C. X=10,Y=15,Z=10 D. X=10,Y=10,Z=10 X=10,Y=10,Z=0 X=0,Y=10,Z=0 3.若x是int型变量,y是float型变量,所用的scanf调用语句格式为: scanf("x=%d,y=%f",&x,&y); 则为了将数据10和66.6分别赋给x和y,正确的输入应是:。 A. x=10,y=66.6<回车> B. 10 66.6<回车> C. 10<回车>66.6<回车> D. x=10<回车>y=66.6<回车> 4.已知有变量定义:int a;char c;用scanf(“%d%c”,&a,&c);语句给a和c输入数据,使30 存入a,字符‘b’存入c,则正确的输入是:。 A. 30’b’<回车> B. 30 b<回车> C. 30<回车>b<回车> D. 30b<回车> 5.已知有变量定义:double x;long a; 要给a和x输入数据,正确的输入语句是。若要输出a 和x的值,正确的输出语句。 A. scanf(“%d%f”,&a,&x); B. scanf(“%ld%f”,&a,&x); printf(“%d,%f”,a,x); printf(“%ld,%f”,a,x); C. scanf(“%ld%lf”,&a,&x); D. scanf(“%ld%lf”,&a,&x); printf(“%ld,%lf”,a,x); printf(“%ld,%f”,a,x); 6.若有定义double x=1,y;则以下的语句执行的结果是。 y=x+3/2; printf(“%f”,y); A.2.500000 B.2.5 C.2.000000 D.2 7.若a为整型变量,则以下语句。

C语言详解(第五版)第二章程序设计项目答案

C语言详解(第五版)程序设计项目答案第二章 1.编写一个程序,以每英里0.35的费率计算一个售货员的里程偿还金。程序中要求与用户进行如下方式的交互。 #include #include int main(void) {float mile_1,mile_2,miles,consume,payment; printf("MILEAGE REIMBURSEMENT CALCULATOR\n"); printf("Enter begainning odometer reading>\n"); scanf("%f",&mile_1); printf("Enter endding odometer reading>\n"); scanf("%f",&mile_2); printf("Enter consume per mile>\n"); scanf("%f",&consume); miles=mile_2-mile_1; payment=miles*consume; printf("You traveled%f miles.At%f per mile,your reimbursement is%f",miles,consume,payment); system("pause"); return(0); } 2.编写一个程序,用于辅助设计水力发电大坝。提示用户输入大坝高度,以及水流量。如果水由重力所做的功有90%转化为电能,测算会有多少M瓦的功率。 #include #include int main(void) {double density,weight,gravitational_acceleration, efficiency,height,water_flow_rate,work,electricity_power; printf("Please type in the density of water>"); scanf("%lf",&density); printf("Please type in the gravitational_acceleration>"); scanf("%lf",&gravitational_acceleration); printf("Please type in the height of the water>"); scanf("%lf",&height); printf("Please type in the efficiency of the transformation\nfrom water to electricity>"); scanf("%lf",&efficiency); printf("Please type in the water_flow_rate>"); scanf("%lf",&water_flow_rate); weight=density*water_flow_rate; work=weight*height*gravitational_acceleration; electricity_power=work*efficiency/1000000; printf("The electric energy production is%fW",electricity_power); system("pause"); return0; }

C语言第二章习题带答案

1.C语言中的简单数据类型包括( B )。 A.整型、实型、逻辑型B.整型、实型、字符型 C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型2.在C语言中,错误的short类型的常数是( A )。 A.32768 B.0 C.037 D.0Xaf 3.下列常数中不能作为C的常量的是( D )。 A.0x45 B.2.5e-2 C.3e2 D.0582 4.short类型的数据长度为2个字节,则unsigned short类型数据的取值范围是( B )。 A.0至255 B.0~65535 C.-32768~32767 D.-256~255 5.下面4个选项中,均是合法转义字符的选项是( A )。 A.'\'','\\','\n' B.'\','\017','\' C.'\018','\f','xab' D.'\\0,'101','x1f 6.在C语言中,数字029是一个( D )。 A.八进制数B.十六进制数 C.十进制数D.非法数 7.下列可以正确表示字符型常数的是( B )。 A."a" B.'\t' C."\n" D.297 8.以下( C )是错误的转义字符。 A.'\\' B.'\'' C.'\81' D.'\0' 9.C语言中short类型的变量a的值为-8,则a在内存中的存储形式是( A )。 A.1111 1111 1111 1000 B.100000000000 1000 C.000000000000 1000 D.1111 1111 1111 0111 10.将字符g赋给字符变量c,正确的表达式是( C )。 A.c="g" B.c=101 C.c='\147' D.c='0147' 11.字符串"\\\22a,0\n"的长度是( C )。 A.8 B.7 C.6 D.5 12.为求出s=10!的值,则变量s的类型应当为( C )。 A.short B.unsigned short C.long D.以上三种类型均可13.已知:unsigned short x=65535;,则执行以下语句输出是( D )。 printf("%d\n", x); A.65535 B.1 C.无定值D.-1 14.下面4个选项中,均是合法整型常量的选项是( A )。 A.160,-0xffff,011 B.-0xcdf,01a,0xe C.-01,986,012,0668 D.-0x48a,2e5,0x 15.下面4个选项中,均是不合法的整型常量的选项是( D )。 A.--0f1,-0xffff,0011 B.-0Xcdf,01a,0xe C.-018,999,5e2 D.-0x48eg,-068,03f 16.下面4个选项中,均是合法浮点数的选项是( B )。 A.+1e+1,5e-9.4,03e2 B.-.60,12e-4,-8e5 C.123e,1.2e-.4,+2e-1 D.-e3,.8e-4,5.e-0

C语言第二章习题

1.以下叙述中错误的是( )。 A) 使用三种基本结构构成的程序只能解决简单问题 B) 结构化程序由顺序、分支、循环三种基本结构组成 C) C语言是一种结构化程序设计语言 D) 结构化程序设计提倡模块化的设计方法 2.以下可以将任意一个两位整数n的个位数与十位数对换的表达式为() A) (n-n/10*10)*10+n/10 B) n-n/10*10+n/10 C) n/10+(n-n/10) D) (n-n/10)*10+(n/10) 3.以下叙述中错误的是 A) 算法正确的程序可以有零个输入 B) 算法正确的程序最终一定会结束 C) 算法正确的程序可以有零个输出 D) 算法正确的程序对于相同的输入一定有相同的结果 4.若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++) : (y ++)中的条件表达式(x-y) 等价的是( )。 A) (x-y<0||x-y>0) B) (x-y<0) C) (x-y>0) D) (x-y==0) 5.有以下程序

—#include main() { int a; a = (int)1.99*3; printf("%d\n", a); } 程序的运行结果是() A) 3 B) 5 C) 6 D) 结果不确定 6.请选出合法的C语言赋值语句:() A) a=b=58 B) i++; C) a=58,b=58 D) k=int(a+b) 7.假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表 示代数式 1/abc 的表达式是:() A) 1/a*b*c B) 1/(a*b*c) C) 1/a/b/(float)c D) 1.0/a/b/c 8.请选出以下语句的输出结果:() printf("%d\n",strlen("\t\"\065\xff\n"));//srelen()为求字符串长度的函数,返回字节数。

c语言第二章习题

第二章练习题 一、填空题 1、在C语言中的实型变量分为两种类型,它们是float型和()型。 2、若有定义:char c='\010';则变量c中包含的字符个数为() 3、已知字母a的ASCII码为十进制数97,且设ch为整型变量,则表达式ch='a'+'8'-'3'的值为() 4、在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为()个;一个int型数据在内存中所占的字节数为()个。 5、在C语言中,表示逻辑“假”值用数字()表示。 6、C语言中的标识符只能由字母、数字和()三种字符组成。 7、表达式8/4*(int)(2.5)/(int)(1.25*(3.7+2.3))的值为() 8、整型常量即整常数。可用三种形式表示:十进制整数、八进制整数以()开头、十六进制整数以()开关(注:请用小写字母) 9、请将75写成C语言八进制和十六进制表示(),()。 10、若有定义:int m=5,y=2;则计算表达式y+=y-=m*=y后的y值是() 11、若a是int型变量,则表达式(a=4*5,a*2),a+6的值为()。 12、若a,b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为(),b值为(),c值为()。 13、若a是int型变量,且a的初值为6,则计算表达式a+=a-=a*a后a的值为() 14、若a是int型变量,则计算表达式a=25/3%3 后a的值为() 15、若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为(),n的值为() 16、若有定义:int b=7;float a=2.5,c=4.7;则下面表达式的值为() a+(int)(b/3*(int)(a+c)/2)%4 17、若有以下定义:int a=2,b=3;float x=3.5,y=2.5;则下面表达式的值为()(float)(a+b)/2+(int)x%(int)y 18、若有定义:int x=3,y=2;float a=2.5,b=3.5;则下面表达式的值为() (x+y)%2+(int)a/(int)b 19、所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为() 20、若有定义:int e=1,f=4,g=2;float m=11.29,n=4.0,k;则计算赋值表达式k=(e+f)/g+sqrt(n*1.2/g+m)后k的值是() 21、若x为int型变量,则执行以下语句后x的值是()

C语言第二章习题带答案

练习2-1 答案选择题 1. C语言中的简单数据类型包括(B ) o A.整型、实型、逻辑型 B.整型、实型、字符型 C?整型、字符型、逻辑型 D.整型、实型、逻辑型、字符型 2. 在C语言中,错误的short类型的常数是(A )。 A. 32768 B. 0 C. 037 D. 0Xaf 3. 下列常数中不能作为C的常量的是(D ) o A. 0x45 B. -2 C. 3e2 D. 0582 4. short 类型的数据长度为2个字节,则unsigned short 类型数据的取值范围是( B) A. 0 至255 B. 0~65535 C. -32768~32767 D. -256~255 5. 下面4 个选项中,均是合法转义字符的选项是( A ) o A. '\'' ,'\\' ,'\n' B. '\' ,'\017' ,'\' C. '\018' ,'\f' ,'xab' D. '\\0 ,'101' ,'x1f 6. 在C语言中,数字029是一个(D ) o A.八进制数B?十六进制数C.十进制数 D.非法数 7.下列可以正确表示字符型常数的是( B ) o A."a" B.'\t' C."\n" D.297 8. 以下(C)是错误的转义字符。 9. C语言中short类型的变量a的值为-8,则a在内存中的存储形式是(A ) 10. 将字符g赋给字符变量c,正确的表达式是(C) o A.c="g" B.c=101 C.c='\ 1 47' 11.字符串"\\\22a,0\n" 的长度是( C ) o A.8 B.7 C.6 12.为求出s=10!的值,则变量s的类型应当为(C) o A.short B.unsigned short C.long 13.已知:unsigned short x=65535; ,则执行以下语句输出是( D) o printf("%d\n", x) ; A. 65535 B. 1 C.无定值 D. -1 14.下面4个选项中,均是合法整型常量的选项是( A ) o A.160,-0xffff ,011 B.-0xcdf ,01a,0xe C.-01 ,986,012,0668 D.-0x48a,2e5,0x 15.下面4个选项中,均是不合法的整型常量的选项是( D ) o A .--0f1 ,-0xffff ,0011 B.-0Xcdf ,01a,0xe C .-018,999,5e2 D.-0x48eg ,-068 , 03f 16.下面4个选项中,均是合法浮点数的选项是( B ) A.+1e+1,,03e2 B.,12e-4 ,-8e5 A.'\\' B.'\'' C.'\81' D.'\0' A.1111 1111 1111 1000 B.1000 C.000000000000 1000 D.1111 1111 1111 0111 D.c='0147' D.5 D.以上三种类型均

C语言第二章习题带答案

练习2-1答案 选择题 1.C语言中的简单数据类型包括( B )。 A.整型、实型、逻辑型B.整型、实型、字符型 C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型2.在C语言中,错误的short类型的常数是( A )。 A.32768 B.0 C.037 D.0Xaf 3.下列常数中不能作为C的常量的是( D )。 A.0x45 B.-2 C.3e2 D.0582 4.short类型的数据长度为2个字节,则unsigned short类型数据的取值范围是( B )。 A.0至255 B.0~65535 C.-32768~32767 D.-256~255 5.下面4个选项中,均是合法转义字符的选项是( A )。 A.'\'','\\','\n' B.'\','\017','\' C.'\018','\f','xab' D.'\\0,'101','x1f 6.在C语言中,数字029是一个( D )。 A.八进制数B.十六进制数 C.十进制数D.非法数7.下列可以正确表示字符型常数的是( B )。 A."a" B.'\t' C."\n" D.297 8.以下( C )是错误的转义字符。 A.'\\' B.'\'' C.'\81' D.'\0' 9.C语言中short类型的变量a的值为-8,则a在内存中的存储形式是( A )。 A.1111 1111 1111 1000 B. 1000 C.000000000000 1000 D.1111 1111 1111 0111 10.将字符g赋给字符变量c,正确的表达式是( C )。 A.c="g" B.c=101 C.c='\147' D.c='0147' 11.字符串"\\\22a,0\n"的长度是( C )。 A.8 B.7 C.6 D.5 12.为求出s=10!的值,则变量s的类型应当为( C )。 A.short B.unsigned short C.long D.以上三种类型均可 13.已知:unsigned short x=65535;,则执行以下语句输出是( D )。 printf("%d\n", x); A.65535 B.1 C.无定值D.-1 14.下面4个选项中,均是合法整型常量的选项是( A )。 A.160,-0xffff,011 B.-0xcdf,01a,0xe C.-01,986,012,0668 D.-0x48a,2e5,0x 15.下面4个选项中,均是不合法的整型常量的选项是( D )。 A.--0f1,-0xffff,0011 B.-0Xcdf,01a,0xe C.-018,999,5e2 D.-0x48eg,-068,03f

c语言第1、2章练习题答案

第1、2章练习题 1.以下叙述正确的是()。B A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如fun(fun(x)) C)C语言函数不可以单独编译D)C语言除了main函数外,其他函数不可以作为单独文件形式存在2.以下叙述正确的是()。C A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句 C)简单的C语句必须以分号结束D)C语句必须在一行内写完 3.以下叙述中正确的是()。C A)C程序中的注释只能出现在程序的开始位置和语句的后面 B)C程序书写格式严格,要求一行内只能写一条语句 C)C程序书写格式自由,一条语句可以写在多行上 D)用C语言编写的程序只能放在一个程序文件中 4.下列叙述中错误的是()。A A)一个C语言程序只能实现一种算法B)C语言程序可以由多个程序文件组成 C)C语言程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在5.以下叙述中正确的是()。C A)C语言程序将从源程序中的第一个函数开始执行 B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C)C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D)main可作为用户标识符,用以命名任意一个函数作为主函数 6.对于一个正常运行的C程序,以下叙述正确的是()。A A)程序的执行总是从main函数开始,在main函数中结束 B)程序的执行总是从程序的第一个函数开始,在main函数结束 C)程序的执行总是从main函数开始,在程序的最后一个函数中结束 D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束 7.下列叙述正确的是()。D A)每个C语言程序文件中都必须有一个main( )函数 B)在C语言程序中main( )函数的位置是固定的 C)C语言程序中所有函数之间都可以相互调用,与函数所在的位置无关 D)在C语言程序的函数中不能定义另一个函数 8.下列叙述中错误的是()。B A)C程序在运行过程中所有计算机都以二进制方式进行 B)C程序在运行过程中所有计算机都以十进制方式进行 C)所有C程序都需要在链接无误后才能运行 D)C程序中整型变量只能存放整数,实型变量只能存放浮点数 9.计算机能直接执行的程序是()。D A)源程序B)目标程序C)汇编程序D)可执行程序 10.C语言源程序的后缀名是()。B A).exe B).c C).obj D).cp 11.下列叙述中错误的是()。D A)计算机不能直接执行用C语言编写的源程序 B)C程序经C编译器编译后,生成后缀为.obj的文件,这是一个二进制文件 C)后缀为.obj的文件,经连接后生成后缀为.exe的文件,这是一个二进制文件 D)后缀为.obj和.exe的二进制文件都可以直接运行 12.算法中,对需要执行的每一步操作都必须给出清楚、严格的规定,这属于算法的()。C

C语言第二章习题及详解

二、第二章 1、设整型变量a的值为2,下列表达式值为1的是__。(A) A)a%3B)a/3=0C)--a D)a++ 2.设变量a、b、c已定义并赋值,则下列表达式中符合C语言语法规则的是__。(B) A)a=5++操作数只能是变量B)a=b=c++C)a=%2D)b=a+1=2左边只能是单个变量,即变量1=变量2=。。。 3.下列式中,最终运算结果的数据类型不是单精度的表达式是__。(A) A)(int)(3+3.0)B)1e-3fen:n必须为整数C)(float)(3)D)(int)3.0+3.0 4.字符串”ab\x41\\34cd\102y”的长度是_A_。\xhh表示ASCII码:例\x41,41是16进制的。字符串含有’\0’。’\102’也表示ASCII码,但102是8进制的,长度为10,储存空间占11个字节。 A)10B)12C)14D)18 5、变量是在程序运行过程中可改变的它的三要素是类型、名称、数值 6.以下选项中合法的常量是?D A)’Internet’B)E_3变量C)02x D)0xfeL 7.以下选项中合法的赋值表达式是?C A)d=8+a+f=d+6同2D B)d=(a+8)++同2A C)d=(8+e,e++,d+9)D)d=7+e++=d+7

8.main() {int x=5,y=3; float f; f=x/y;表示为整形 printf(“f=%f\n”,f); } 则程序的输出结果是?f=1.000000 9.设整型变量x,y,z均为2,表达式(x++)+(y++)+(z++)的值是_A先使用值再加 加_。 A)6B)7C)8D)9 10.设int a=3,b=5;float x=7.5,y=3.5;则表达式(float)a+b/2+(int)x%(int)y; 的值是6.0__。 *11.执行语句:int a;a=‘1’+1.5;后,正确的叙述是_D_。 A)a的值是字符‘3’B)a的值是浮点型 C)不允许字符型和浮点型相加 D)a的值是字符’1’的ASCII码值加上1 12.设int类型的数据长度为2个字节,则unsigned int类型数据的取 值范围是_B_。 A)均为2个字节TC与VC不一样B)0~65535 C)-32768~32767D)-256至255

C语言程序设计第二章答案

何钦铭,颜晖主编版第二章答案课本38页 第一题 #include"stdafx.h" #include"stdio.h" #include"iostream" int _tmain(int argc, _TCHAR* argv[]) { int num1,num2; int a1,a2,a3,a4,a5; printf("num1=\n"); scanf("%d",&num1); printf("num2=\n"); scanf("%d",&num2); a1=num1+num2; a2=num1-num2; a3=num1*num2; a4=num1/num2; a5=num1%num2;

printf("a1=%d\na2=%d\na3=%d\na4=%d\na5=%d\n",a1,a2,a 3,a4,a5); system("pause"); return 0; } 第二题 // 38.2.cpp : 定¨义?控?制?台 ?应畖用?程ì序?的?入?口ú点?。£ // #include"stdafx.h" #include"stdio.h" #include"iostream" int _tmain(int argc, _TCHAR* argv[]) { float a,b; printf("使?用?的?电?量?是?:\n"); scanf("%f",&a); if (a<=50){

b=a*0.53; } else{ b=50*0.53+(a-50)*(0.53+0.05); } printf("支§付?的?电?费?是?:阰%2f\n",b); system("pause"); return 0; } 第三题 // 38.3.cpp : 定¨义?控?制?台 ?应畖用?程ì序?的?入?口ú点?。£ // #include"stdafx.h" #include"stdio.h" #include"iostream"

C语言数据类型习题包括答案.docx

第二章数据类型,运算符与表达式 一.选择题 1.不合法的字符常量是( B)。 A)‘ \t ’B) “ A” C )‘ a’ D)’ \x32 ’ 2、合法的字符常量是( D)。 A)‘ \084 ’B)‘ \84 ’ C )‘ab’ D)’ \x43 ’ 2.( B)是 C 语言提供的合法的数据类型关键字。 A) Float B) signed C) integer D)Char 3.在以下各组标识符中,合法的标识符是( 4)。 (1) A) B01 B )table_1C) 0_t D) k% (2) A) Fast_ B) void C)pbl D) (3) A) xy_ B ) longdouble C)*p D) CHAR (4) A) sj B)Int C)_xy D)w_y23 4.属于合法的 C 语言长整型常量的是( B)。 A) 5876273B) 0L C) 2E10D) (long)5876273 5.下面选项中,不是合法整型常量的是( B)。 A) 160B)- 0xcdg C)- 01D)- 0x48a 6.判断 int x = 0xaffbc;x 的结果是( B)(turbo c版本)。 A)赋值非法 B )溢出C)为 affb D)为 ffbc 7.下面选项中,均是合法浮点数的是( B)。 A)+ 1e+ 1 B)- .60 C) 123e D )- e3 A)5e -B)12e-4C)- .4 D).8e- 4 A)03e2B)-8e5C)+ 2e-1D) -0 8.在 C 语言中,要求参加运算的数必须是整数的运算符是( C)。A) / B) * C ) % D) = 9.在 C 语言中,字符型数据在内存中以( D)形式存放。 A)原码 B ) BCD码C)反码D) ASCII 码 10.下列语句中,符合语法的赋值语句是( C)。 A) a= 7+ b+ c= a+7;B) a= 7+ b++= a+ 7; C) a=(7 + b, b++, a+ 7) ; D ) a=7+ b, c= a+ 7; 11.( B)是非法的 C 语言转义字符。 A)‘ b’B)‘ 0xf ’ C )‘037’ D )‘’’ 12.对于语句: f=,,,,,;的判断中( B),是正确的。 A)语法错误B)f 为 5.0C)f为 D) f 为 13.与代数式 (x*y)/(u*v)不等价的 C语言表达式是( A)。 A) x*y/u*v B) x*y/u/v C) x*y/(u*v) D) x/(u*v)*y 14.在 C 语言中,数字029 是一个( D)。 A)八进制数 B )十六进制数 C )十进制数 D )非法数 15. C语言中( Turbo C 环境)整数-8 在内存中的存储形式为( A)。A) 000B) 00 C) 000000000001000D)111 16.对于 char cx= ’039’; 语句,正确的是(A) 。 A)不合法 B ) cx 的 ASCII 值是 33 C) cx 的值为四个字符D)cx 的值为三个字符

c语言第二章习题及详解

二、第二章 1. 设整型变量a的值为2,下列表达式值为1的是_。(A) A) a%3 B) a/3 =。C) --a D) a++ 2. 设变量a、b、c已定义并赋值,则下列表达式中符合C语言语法规则的是_。(B) A) a=5++ 操作数只能是变量B) a=b=c++ C) a=%2 D) b=a+1=2 左边只能是单个变量,即变量 1二变量2=。。。 3. 下列式中,最终运算结果的数据类型不是单精度的表达式是__。 (A) A)(int)(3+3.0) B)1e-3 fen:n 必须为整数C) (float)(3) D)(i nt)3.0+3.0 4. 字符串” ab\x41 \\34cd\102y ”的长度是_ A o \xhh 表示ASCII 码:例\x41,41 是16 进制的。字符串含有’\0 ' o' \102 '也表示ASCII码,但102是8进制的,长度为10,储存空间占11个字节。 A)10 B)12 C)14 D)18 5. 变量是在程序运行过程中可改变的它的三要素是类型、名称、数值 6. 以下选项中合法的常量是?D 7.以下选项中合法的赋值表达式是?C

A) 'In ter net ' B)E_3 变量C)02x D)0xfeL

A) d=8+a+f=d+6 同2D B)d=(a+8)+ + 同2A C) d=(8+e,e+ +,d+9) D)d=7+e+ + =d+7 8. mai n() {int x=5,y=3; float f; f=x/y;表示为整形 printf( “f=%f\n ” ,f); } 则程序的输出结果是?f=1.000000 9. 设整型变量x,y,z均为2,表达式(x++)+(y++)+(z++)的值是_A先使用值再加加。 A) 6 B) 7 C) 8 D) 9

c语言第二章课后习题答案

第3章数据类型、运算符与表达式 习题答案 一、选择题 1.以下表示正确常量的是()。 (A) E-5 (B) 1E5.1 (C) 'a12' (D) 32766L 【答案】D 2.若有定义:int a=1,b=2,c=3,d=4,x=5,y=6; 则表达式(x=a>b)&&(y=c>d) 的值为()。 (A)0 (B) 1 (C) 5 (D) 6 【答案】A 3.以下()是正确的字符常量。 (A)"c" (B) '\\'' (C) 'W' (D) "\32a" 【答案】C 4.以下()是不正确的字符串常量。 (A) 'abc' (B) "12'12" (C) "0" (D) " " 【答案】A 5.以下是正确的浮点数的是()。 (A)e3 (B) .62 (C) 2e4.5 (D) 123 【答案】B 6.若有定义:int a=2; 则正确的赋值表达式是()。 (A)a-=(a*3) (B) double(-a) (C) a*3 (D) a*4=3 【答案】A 7.若有定义:int x=1111,y=222,z=33;则语句printf("%4d+%3d+%2d", x, y, z);运行后的 输出结果为()。 (A)111122233 (B)1111,222,33 (C)1111 222 33 (D)1111+222+33 【答案】D 8.已有如下定义和输入语句: int a,b; scanf("%d,%d",&a,&b); 若要求a、b的值分别为11和22,正确的数据输入是哪一个?() (A)11 22 (B)11,22 (C)a=11,b=22 (D)11;22 【答案】B

C语言程序设计课后答案

第二章C++简单程序设计 2-10 执行完下列语句后,a、b、c三个变量的值为多少? a = 30; b = a++; c = ++a; a:32 ;b:30 ;c:32; 2-13 写一条for语句,计数条件为n从100到200,步长为2;然后用while和do…while语句完成同样的循环。 解: for循环: for (int n = 100; n <= 200; n += 2); while循环: int x = 100; while (n <= 200) n += 2; do…while循环: int n = 100; do { n += 2; } while(n <= 200); 2-17 修改下面这个程序中的错误,改正后它的运行结果是什么? #include <> void main() int i int j; i = 10; /* 给i赋值 j = 20; /* 给j赋值*/ cout << "i + j = << i + j; /* 输出结果*/ return 0; } 解: 改正: #include <> int main() { int i; int j; i = 10; 09:;<>?@ABCDEFGHIJKLMNOP_QRSTUV WXYZ[\]^'abcdefghijklmnopqrstuvwxyz<| >~s 2-21 运行下面的程序,观察其输出,与你的设想是否相同? #include <> int main() { unsigned int x; unsigned int y = 100; unsigned int z = 50; x= y - z; cout << "Difference is: " << x; x = z - y; cout << "\nNow difference is: " << x < int main() { int myAge = 39; n"; cout << "You are: " << yourAge << " years old\n"; myAge++; .\n"; cout << "I am: " << myAge << " years old.\n"; cout << "You are: " << yourAge << " years old\n"; cout << "Another year passes\n"; cout << "I am: " << myAge++ << " years old.\n"; cout << "You are: " << ++yourAge << " years old\n"; cout << "Let's print it again.\n"; cout << "I am: " << myAge << " years old.\n"; cout << "You are: " << yourAge << " years old\n"; return 0; } 解: 程序运行输出: I am 39 years old You are 39 years old One year passes I am 40 years old You are 40 years old Another year passes I am 40 years old You are 41 years old Let's print it again I am 41 years old You are 41 years old 2-28 编写一个完整的程序,实现功能: 向用户提问"现在正在下雨吗?",提示 用户输入Y或N。若输入为Y,显示"现 在正在下雨。";若输入为N,显示"现 在没有下雨。";否则继续提问"现在正 在下雨吗?" 源程序: #include <> #include <> void main() { char flag; while(1) { cout << "现在正在下雨吗?(Yes or No):"; cin >> flag; if ( toupper(flag) == 'Y') { cout << "现在正在下雨。"; break; } if ( toupper(flag) == 'N') { cout << "现在没有下雨。"; break; } } } 程序运行输出: 现在正在下雨吗?(Yes or No):x 现在正在下雨吗?(Yes or No):l 现在正在下雨吗?(Yes or No):q 现在正在下雨吗?(Yes or No):n 现在没有下雨。 或: 现在正在下雨吗?(Yes or No):y 现在正在下雨。 2-29 编写一个完整的程序,运行时向用 户提问"你考试考了多少分?(0~100)", 接收输入后判断其等级,显示出来。规 则如下: 解: #include <> void main() { int i,score; cout << "你考试考了多少分?(0~100):";

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