admin 管理员组

文章数量: 1087139


2024年1月17日发(作者:maven地址查询)

7. 在C语言中,形参的缺省存储类是〔 〕。

A. auto B. register C. static D. extern

8. 以下标识符中,不能作为合法的C用户定义标识符的是〔 〕。

A. putchar B. _double C. _123 D. INT

9. 在C语言中,能代表逻辑值“真〞的是〔 〕。

A. True B. 大于0的数 C. 非0整 D. 非0的数

10. x=43,ch='A',y=0;那么表达式(x>=y&&ch<'B'&&!y)的值是〔 〕。

A. 0 B. 语法错 C. 1 D. "假"

D. 使位置指针自动移至下一个字符位置

12. 以下正确的说法是:在C语言中〔 〕。

A. 实参和与其对应的形参各占用独立的存储单元

B. 实参和与其对应的形参共占用一个存储单元

C. 只有当实参和与其对应的形参同名时才共占用存储单元

D. 形参是虚拟的,不占用存储单元

13. 对以下说明语句int a[10]={6,7,8,9,10};的正确理解是〔 〕。

A. 将5个初值依次赋给a[1]至a[5]

B. 将5个初值依次赋给a[0]至a[4]

C. 将5个初值依次赋给a[6]至a[10]

D. 因为数组长度与初值的个数不相同,所以此语句不正确

14. C语言中要求对变量作强制定义的主要理由是〔 〕。

A. 便于移植

C. 便于编辑预处理程序的处理 D. 便于确定类型和分配空间

15. 假设有说明int a[3][4];那么a数组元素的非法引用是〔 〕。

A. a[0][2*1] B. a[1][3] C. a[4-2][0] D. a[0][4]

16. 以下只有在使用时才为该类型变量分配内存的存储类说明是〔 〕。

A. auto和static B. auto和register

C. register和static D. extern和register

17. int a=1,b=2,c=3;if(a>b)a=b;if(a>c)a=c;那么a的值为〔 〕。

A. 1 B. 2 C. 3 D. 不一定

18. 以下程序的输出结果是〔 〕。main(){char c1=97,c2=98;printf("%d%c",c1,c2);}

A. 9798 B. 97b C. a98 D. ab

19. char a[]="Thisisaprogram.";输出前5个字符的语句是〔 〕。

A. printf("%.5s",a); B. puts(a); C. printf("%s",a); D. a[5*2]=0;puts(a);

20. 以下运算符中,优先级最高的运算符是〔 〕。

A. || B. % C. ! D. ==

21. 以下的选择中,正确的赋值语句是〔 〕。

A. a=1,b=2 B. j++ C. a=b=5; D. y=int(x)

22. 假设有inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;那么输出结果不为5的语句为〔 〕。

A. printf("%d",*(a+5)); B. printf("%d",p[5]);

C. printf("%d",*(p+5)); D. printf("%d",*p[5]);

23. 以下表达中正确的选项是〔 〕。

B. 使用带参的宏时,参数的类型应与宏定义时的一致

C. 宏替换不占用运行时间,只占编译时间

D. 在以下定义中CR是称为"宏名"的标识符#defineCR045

24. C语言中,要求运算数必须是整型的运算符是〔 〕。

A. ^ B. % C. ! D. >

25. 假设有int *p=(int *)malloc (sizeof(int));那么向内存申请到内存空间存入整数123的语句为〔 〕。

A. scanf("%d",p); B. scanf("%d",&p);

C. scanf("%d",*p); D. scanf("%d",**p);

26. 结构体类型的定义允许嵌套是指〔 〕。

A. 成员是已经或正在定义的结构体型 B. 成员可以重名

C. 结构体型可以派生 D. 定义多个结构体型

27. 逻辑运算符两侧运算对象的数据类型〔 〕。

A. 只能是0或1 B. 只能是0或非0正数

C. 只能是整型或字符型数据 D. 可以是任何类型的数据

28. 以下运算符中,优先级最高的运算符是〔 〕。

A. = B. != D. ()

A. 提高程序的执行效率 B. 提高程序的可读性

C. 减少程序的篇幅

30.以下程序的输出结果是〔 〕。main(){int

x=1,y=0,a=0,b=0;switch(x){(y){case0.a++;break;case1.b++;break;}case2.a++;b++;break;case3.a++;b++;break;}printf("a=%d,b=%dn",a,b) ;}

A.a=1,b=2 B. a=2,b=1

C. a=1,b=1 D. a=2,b=2

二、多项选择题〔每题2分,共20分〕

1. 设有以下定义int a=0;double b=1.25;cha rc='A';#defined2那么下面语句中正确的选项是〔 〕。

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

2. 假设a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是〔 〕。

A. a=b=c=d=100; B. d++;

C. c+b; D. d=(c=22)-(b++);

3. C语言中三种根本的类型为〔 〕。

A. int B. char C. float D. struct

〕。

A. while是当型结构 B. do-while是直到型结构

C. 两者有区别 D. 两者无区别

5. 以下选项中不合法的字符常量是〔 〕。

A. "B" B. '010' C. 68 D. D

6. t为int类型,进入下面的循环之前,t的值为0do{………}while(t==1);那么以下表达中正确的选项是〔 〕

A. 循环控制表达式的值为0 B. 循环控制表达式的值为1

C. 循环控制表达式合法 D. 以上说法都不对

〕。

A. 三个表达式都不可省略 B. 表达式1可以省略

C. 表达式2可以省略 D. 表达式3可以省略

8. 下面那些为合法整型常量〔 〕

A. 190 B. 0xf C. 0765 D. 0xk

9. 以下为c语言的关键字是〔 〕

A. if B. struct C. union D. Int

10. 以下不正确的表达是( )

A. 在C程序中,每行只能写一条语句

B. 假设a是实型变量,C程序中允许赋值A=10,因此实型变量中允许存放整型

C. 在C程序中,无论是整数还是实数,都能被准确无误地表示

D. 在C程序中,%是只能用于整数运算的运算符

三、判断题〔每题2分,共10分〕

1. 假设a=2,b=-4;那么执行a||b++后,b为-4。( )

A. 错误 B. 正确

2. 格式字符%md中的m只能为正,不能为负。( )

A. 错误 B. 正确

3. 有unsigned int a=16;a=a<<2;那么a的值是64。( )

A. 错误 B. 正确

4. 自增自减运算符++,--可以用于int型、float型和double型资料。( )

A. 错误 B. 正确

5. continue语句可用于switch语句,也可用于for、while和do循环语句中。( ) A. 错误 B. 正确

6. 在某种意义上,char和int通用。( )

A. 错误 B. 正确

7. C语言可以直接访问物理位元元址。〔 〕

A. 错误 B. 正确

A. 错误 B. 正确

9. 假设定义char str[];那么str="yellow";是正确的。( )

A. 错误 B. 正确

10. 假设有int x,y,z; x=y=z=1;那么执行++x&&++y&&++z后,x,y,z的值分别为2,1,1。(

A. 错误 B. 正确

)

程序设计根底参考答案

一、答案选题

1-5ADBAB 6-10CAADC 11-15AABDD 16-20BABAC 21-25CDCBA 26-30ADDBB

二、多项选择题

1. ABC

三、判断题

1.B 2.B 3.B

4.B 5.A 6.B

7.B 8.B 9.A


本文标签: 程序 定义 类型 占用 语句