答案2024年秋季省考练习 C语言选择题

发布 2022-09-21 15:26:28 阅读 5407

1. 在c语言中,合法的字符常量是(d)。p24

a. '字'

b. "a"

c. "abc"

d. 'x41'

注释:字符常量的表现形式有两种:

1)使用单引号括起来的一个字符。例如:’a’、’b’、’

2)使用转义字符表示方法表示的字符。转义字符示意反斜杠’\’开头的,后面跟字符或数字,并用单引号括起来表示字符常量。

2. 下列叙述错误的是(d)。p13

a. 注释部分可单独占用一行,也可跟在语句的后面。

b. 若一条语句较长,可分写在多行上。

c. c源程序必须包含一个main()函数。

d. 语句是构成c源程序的基本单位。

注释:函数是c语言程序的基本单位。

3. 关于c语言数据类型,叙述正确的是(a)。p21

a. 变量使用前应定义相应的数据类型。

b. 不允许使用空类型。

c. 指针类型属于基本类型。

d. 结构类型并不是构造类型。

注释:认真掌握图3-1 c语言的数据类型。

4. c语言函数体使用一对(c)将构成函数的语句括起来。

a. '和 '>

b. '和 '

c. 'd. '和 ']

5. 一个c源程序是由(b )。p13

a. 一个主程序和若干子程序组成。

b. 一个或多个函数组成。

c. 若干子过程组成。

d. 若干子程序组成。

注释:c语言程序都必须有且只有一个主函数,还可以包含任意多个不同名的函数。

6. c源程序的编译是指对源程序(b)。p15

a. 进行录入与编辑。

b. 生成以二进制**形式表示的目标程序

c. 进行查错与解释。

d. 进行连接与运行。

注释:由于计算机只能识别和执行由0和1组成的二进制文件,而不能识别和执行高级语言编写的源程序,所以必须先用c语言系统的编译程序对其进行编译,以生成以二进制**形式表示的目标程序。

7. c语言的下列运算符中,优先级最高的运算符是(a)。p41-42

a. +b. +

c. |d. !

注释:认真掌握表3-3 c语言运算符的优先级与结合性。

8. 下列(d)为合法的用户标识符。p28

a. float

b. 5kc. x0.6

d. _name

注释:标识符可以由字母、数字和下划线构成,且必须由字母或下划线开头,其中字母是指英文26个字母,可以是大写或小写的。

9. 下列(a)为合法的数值常量。p23-24

a. -686

b. -e+7

c. 6,860

d. "6,860"

注释:1)整型常量:

十进制整数:由0~9的数字序列组成,前面可加上+或—表示正数或负数2312、-12等。

八进制整数:以0(零)开头,由0~7的数字序列构成,如0123表示八进制数123,其值为1×82+2×81+3×80=83,即十进制的83。

十六进制整数:以0x或0x开头(0x中的0是数字零),可以由数字0~9和字母a~f或a~f构成,a~f字母用于表示数字10~15。例如,0x2f表示2×161+15×160=47,即十进制的47。

2)浮点型常量。

十进制小数形式:由数字0~9、小数点和+、-组成的。如3.14、-23.56

指数形式:由数字0~9、字母e(或e)和+、-号组成,它的形式为aen,意为a×10n,其中a为十进制整数或小数,n为十进制整数。例如:

2.5e3(表示2.5×103),-3.

5e-2(表示 -3.5×10-2)。

1以指数形式表示实数时,a和n都不能省略,n必须为整数。例如,ee、3e2.5等都是不合法。

的。2以十进制小数形式表示实数时,整数和小数部分可省略其中任一个。例如.都是合法的。

3浮点型常量默认的是double型(双精度),如果在后面加上f或f,则其类型为float(单精度),如2.45f、3.5e2f。

4如果在一个浮点型常量后面加上一个l或l,则表示为long double型,如2.4e2l。

10. 下列(d)为合法的字符常量。

a. 'nm''

b. "mn"

c. "b"

d. 'b'

11. turbo c中,基本数据类型存储空间长度的排列顺序是(a)。p28-29

a. charb. char=intc. chard. char=int注释:认真掌握表3-2 turbo c的基本数据及存储类型。

字符型char 1个字节; 整型int或短整型short int: 2个字节

长整型long int:4个字节。

单精度浮点型float 4个字节双精度浮点型double 8个字节。

长双精度浮点型 long double 10个字节。

12. 下列合法的数据类型关键字是(b)。

a. duble

b. float

c. int

d. character

13. 已知'a'的ascii码的十进制值为65,'0'的ascii码的十进制值为48,则以下程序运行结果是(a)。

main()

char ch1,ch2;

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

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

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

a. 67,d

b. c,d

c. c,68

d. 67,68

注释:可利用wintc进行调试,查看结果;

或通过计算得到’5’-‘3’=2 ‘6’-‘3’=3

14. 若已定义:int a=6; 下列正确的赋值表达式是(c)。

a. a*6

b. a+3=6

c. a+=6

d. 6+=a

注释:变换后左端必须是单个变量,才能进行赋值 c: a=a+6

15. 若已定义:int a; 语句a=5%6-(6/5); 执行后,变量a的值为(a)。

a. 4b. -1

c. 3.8

d. -1.2

注释:乘*、初/、求模% 运算优先级相同。

5%6=5 6/5=1(整数除,得到的是商的整数部分)

16. 若已定义:int a,b,c; 语句a=(b=9,c=5,b*c); 执行后,变量a的值为(a)。

a. 45b. 9

c. 5d. 0

注释:逗号表达式的求值过程是,从左向右依次对各表达式求值,并将最右边一个表达式的值作为整个表达式的值。

17. 若已定义:int a,b; float x=25.8; 下列符合c语言语法的表达式是(a)。p47,p42

a. a=(int)x/3

b. a=x%3

c. a=(x*10)%3

d. b=int(x)%3

注释:求余运算要求参加运算的两个操作数必须都为整型数据。

18. 若已定义:int a=3; 语句 a+=a/=2; 执行后,变量a的值是(b)。

a. 1b. 2

c. 3d. 5

注释:赋值运算符= 的结合方向是右到左原式a+=(a/=2)->a+=1->a=2

19. 下列语句中,符合c语言语法的赋值语句是(c)。p46,p53-54

a. a=7+b+c=a+7; 等价于a=(7+b+c=a+7) 7+b+c=a+7是错误的。

b. a=7+b++=a+7; 等价于a=(7+b++=a+7) 7+b++=a+7 是错误的。

c. a=7+b,b++,a+7; 等价于a=(7+b,b++,a+7)

d. a=7=b,c=a+7; 不符合第2点:a=(7=b)

注释:赋值表达式的语法格式:变量名=表达式。

1. 左值必须是一个变量,可以指明一个确定的可存储位置。 如a+b=5是错误的;

2. 右值可以是常量、变量、函数调用或任何合法的c语言表达式;

3. 赋值运算符本身也是一个表达式,应有一个值,值就是左操作数的新值。a=b=3+5等价于a=(b=3+5)

20. 下列叙述正确的是(a)。

a. (int)6.0/2 与 6/2 结果的类型一致。

b. 6.0/2 与 1/2*6.0 结果一致

c. 6/2 与 6.0/2.0 结果的类型一致。

d. 6/2.0 与 6/2 结果的类型一致。

21. 下列叙述正确的是(c)。p47

a. 表达式 "3"+"4" 的结果是 "34"

b. 若已定义:int a, b; ,则表达式 (a+b)++是进行a+b之和的自增1运算。

c. 强制类型转换运算的优先级高于算术运算。

d. 表达式 '3' +4' 的结果是 '7'

22. 若已定义:int a=5,b; 能使变量b值为2的赋值表达式是(a)。

a. b=(a++)3

b. b = a-(3++)

c. b =(a++)3

d. b=(a+7.8)/4

23. 若已定义:int x=2,y=3; 语句 y-=x++;执行后变量x,y的值分别是(b)。

a. x为3,y为0

b. x为3,y为1

c. x为2,y为0

d. x为2,y为1

24. 与右侧数学式子对应的c语言表达式是(?)p303---没有对应数学式子,但需了解pow函数的使用方法。

a. 3*pow(x,n)/(2*x-1)

b. 3*pow(n,x)/(2*x-1)

c. 3*x^n/(2*x-1)

d. 3*pow(x,n)/2*x-1

25. 以下程序运行时,若从键盘输入5,则输出结果是(d)。

main()

int a;

scanf("%d",&a);

if(a++>5) printf("%d",a);

else printf("%d",a--)

a. 7b. 4

c. 5d. 6

26. 若已定义:float a; 拟从键盘输入数据236给变量a ,应选用(b)语句。

a. scanf("%d",&a) ;

b. scanf("%f",&a) ;

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

d. scanf("%0f",&a) ;

27. 若已定义:char chr; 拟使用scanf( )函数将键盘输入的数据赋予变量chr,无法实现的是(d)。

a. scanf("%c",&chr) ;

b. scanf("%d",&chr) ;

c. scanf("%u",&chr) ;

d. scanf("%e",&chr) ;

注释:关于格式控制符请参看p307页的对应参考资料。

28. 若已定义:int x=10; 语句printf("x=%o,x=%d",x,x); 执行后的输出结果是(b)。

a. x=12, x=12

b. x=12, x=10

c. x=10, x=10

d. x=10, x=12

29. 若有下列语句段:

char chr;

int a;

scanf("%c%d",&chr,&a);

《C语言》2019秋季作业试题和答案

0039 c语言 讲师 邹显春。z的值是 3 i 1,max 0或max i 0 max i a max 36 设int m 3 float n 12.6 char ch a 若用输入语句实现上述三个变量的初始化结果且键入数据形式为 3,12.6a 回车换行 则scanf语句应是。d,f c m,n...

2024年教师招聘考试备考练习

一 选择题。1.将孔子因人而异的教学方法概括为 孔子施教,各因其材 的是 a.孟子b.荀子c.曾子d.朱熹。2.学习者为了提高学习的效果和效率,有目的有意识地制定有关学习过程的复杂方案,称 a.学习方法b.学习规律c.学习策略d.学习计划。二 判断题。1.孔子主张的 不愤不启 不悱不发 体现了循序渐...

2024年全国初中数学竞赛考练题答案

全国初中数学竞赛考练题 一 参 一 选择题 共10小题,每小题6分,满分60分 1.答 b 解由得,所以,注 本题也可用特殊值法来判断。2 答 a 解 因为,0,由已知条件得,所以。3 答 c 解因为,即当分别取值,为正整数 时,计算所得的代数式的值之和为0 而当时,因此,当分别取值时,计算所得各代...