【2】二级C语言中那些易错的概念题

本篇是这几天总结的C语言易错概念题,这些题往往就是因为概念不清而做错,而当我们对概念非常熟练时,又可以秒选。这些题其实都是强行记住就行了,概念不清也就是没记住嘛,因为这种题失分简直就太不值得了,因此有必要自己总结一下,提醒自己不要再错。

1、若有定义语句:double a, *p=&a ; 以下叙述中错误的是
A)定义语句中的 * 号是一个说明符
B)定义语句中的 * 号是一个间址运算符
C)定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p
D)定义语句中的p只能存放double类型变量的地址
标准答案:B(取值的时候才是)

2、以下叙述中错误的是
A)用户定义的函数中若没有return语句,则应当定义函数为void类型
B)函数的return语句中可以没有表达式
C)用户定义的函数中可以没有return语句
D)用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值
标准答案:D(不是为了返回多个函数值,只有第一个返回值有效)

3、 以下叙述中正确的是
A 即使不进行强制类型转换,在进行指针赋值运算时,指针变量的基类型也可以不同
B指针变量之间不能用关系运算符进行比较
C 设置p是一个指针变量,则语句p==0;是非法的,应使用p = NULL
D 如果企图通过一个空指针来访问一个存储单元,将会得到一个错误信息
答案:D

4、以下叙述中正确的是
A 数组下标的下限由数组中第1个被赋值元素的位置决定
B 数组下标的下限是1
C 数组元素的下标下限由第一个非零元素的位置决定
D char c1,c2,*c3,c4[40];是合法的变量定义语句
答案:D

5、 以下叙述中正确的是
A设有指针变量double *p,则p+1将指针p移动8个字节
B函数的形参类型不能使指针类型
C基类型不同的指针变量可以相互混用
D函数的类型不能是指针类型
答案:A

6、有 int func(int a[10], int n);则以下叙述中正确的是
A 说明中的a[10]改为a[]或
a效果完全一样
B func函数中不能对a进行移动指针(如a++)的操作
C 只有指向10个整数内存单元的指针,才能作为实参传递给形参
D 形参a对应的实参只能是数组名
答案:A

7、在C语言中,只有在使用时才占用内存单元的变量,其存储类型是
A auto和static
B static和register
C extern和register
D auto和register
答案:D

8、以下语句中错误的是
A char *ss[6]; ss[1]=”right?”;
B char *ss[]={“right?”};
C char ss[6][20]; ss[1]=”right?”;
D char ss[][20]={“right?”};
答案:C(ss[6][20]代表的是一个字符元素)

9、在一个C源程序文件中所定义的全局变量,其作用域为
A、有具体定义位置和extern说明来决定范围
B、所在文件的全部范围
C、所在函数的全部范围
D、所在程序的全部范围
答案:A

10、以下叙述中正确的是
(A) 复合语句也被称为语句块,它至少要包含两条语句
(B) 在scanf函数的格式中,必须有与输出项一一对应的格式转换说明
(C) scanf函数中的字符串,是提示程序员的。输入数据时不必管它
(D) 只能在printf函数中指定输入数据的宽度,而不能在scanf函数中指定输入数据占的宽度
标准答案:B(scanf也可以指定宽度)

11、以下叙述中正确的是
(A) 在使用scanf函数输入整型或实数时,输入数据之间只能用空格来分隔
(B) 在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上
(C) 使用printf函数无法输入百分号%
(D) 在printf函数中,各个输出项只能是变量
标准答案:B(格式控制在scanf中也有效)

12、以下叙述中正确的是
(A) scanf和printf是C语言提供的输入和输出语句
(B) 由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定
(C) 由printf输出的数据都隐含左对齐
(D) 赋值语句是一种执行语句,必须放在函数的可执行部分
标准答案:D

13、以下叙述中正确的是
(A) 在C语言程序设计中,所有函数必须保存在一个源文件中
(B) 结构化程序必须包含所有的三种基本结构,缺一不可
(C) 只要包含了三种基本结构的算法就是结构化程序
(D) 在算法设计时,可以把复杂任务分解成一些简单的子任务
标准答案:D

14、以下叙述中正确的是
(A) 空语句就是指程序中的空行
(B) 花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的
(C) 复合语句在语法上包含多条语句,其中不能定义局部变量
(D) 当用scanf从键盘输入数据时,每行数据在没有按下回车键(Enter键)前,可以任意修改
标准答案:D

15、C语言中double类型数据占字节数为
(A) 12 (B) 8 (C) 4 (D) 16
标准答案:B

16、以下叙述中正确的是
(A) 书写源程序时,必须注意缩进格式,否则程序会有编译错误
(B) 程序的主函数名除了main外,也可以使用Main或_main
(C) 程序可以包含多个主函数,但总是从第一个主函数处开始执行
(D) 在C程序中,模块化主要是通过函数来实现的
标准答案:D

17、以下不能用于描述算法的是
(A) 文字叙述  
(B) 伪代码和流程图
(C) 程序语句
(D) E-R图
标准答案:D

18、以下选项中不属于C语言标识符的是
(A) 关键字
(B) 预定义标识符
(C) 用户标识符
(D) 常量
标准答案:D(常量是一个特殊代表不变值的量)

19、关于算法,以下叙述中错误的是
(A) 一个算法对于某个输入的循环次数是可以事先估计出来的
(B) 同一个算法对于相同的输入必须得出相同的结果
(C) 某个算法可能会没有输入
(D) 任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕
标准答案:D(非任何算法)

20、我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令,关于转换以下说法错误的是
(A) 一条C语句可能会被转换成零条机器指令
(B) 某种类型和格式的C语句被转换成机器指令的条数是固定的
(C) 一条C语句可能会被转换成多条机器指令
(D) 一条C语句对应转换成一条机器指令
标准答案:D(注释语句就不会转化成指令)

21、以下关于C语言数据类型使用的叙述中错误的是
(A) 若只处理“真”和“假”两种逻辑值,应使用逻辑类型
(B) 若要保存带有多位小数的数据,可使用双精度类型
(C) 整数类型表示的自然数是准确无误差的
(D) 若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型
标准答案:A(C语言没有专门的逻辑逻辑类型变量,非0就是真,0就是假)

22、以下选项中关于C语言常量的叙述错误的是
(A) 经常被使用的变量可以定义成常量
(B) 常量分为整型常量、实型常量、字符常量和字符串常量
(C) 所谓常量,是指在程序运行过程中,其值不能被改变的量 (D) 常量可分为数值型常量和非数值型常量
标准答案:A(变量也是经常用到的量)

23、以下叙述中错误的是
(A) 算法正确的程序对于相同的输入一定有相同的结果
(B) 算法正确的程序可以有零个输入
(C)算法正确的程序可以有零个输出
(D)算法正确的程序最终一定会结束
标准答案:C

24、关于C语言数据类型的叙述,正确的是()
A. 枚举类型不是基本类型
B. 数组不是构造类型
C. 变量必须先定义后使用
D. 不允许使用空类型
标准答案:C

25、结构化程序设计的三种基本结构是()
A. 函数结构、分支结构、判断结构
B. 函数结构、嵌套结构、平行结构
C. 顺序结构、分支结构、循环结构
D. 分支结构、循环结构、嵌套结构
标准答案:C

26、调试程序是指对程序进行()
A. 编辑 B. 编译 C. 查错和排错 D. 连接
标准答案:C

27、C语言的字符型数据在内存中的存储形式是()
A. 原码 B. 补码 C. 反码 D. ASCII
标准答案:B

28、下面叙述正确的是()
A. 2/3与2.0/3.0等价
B. (int)2.0/3与2/3等价
C. ++5与6等价
D. ‘A’与”A”等价
标准答案:B

29、下面叙述正确的是()(ASCII码可以加减乘除)
A. 强制类型转换运算的优先级高于算术运算
B. 若a和b是整型变量,(a+b)++是合法的
C. ‘A’*’B’是不合法的
D. “A”+”B”是合法的
标准答案:A

30、若有定义:int i,j;则表达式(i=2,j=5,i++,i+j++)的值是()
A. 7 B. 8 C. 9 D. 10
标准答案:B

31、C语言的运算符按运算对象的个数可以分为()
A. 单目运算符一种
B. 单目和双目运算符
C. 单目、双目和三目运算符
D. 单目、双目、三目和四目运算符
标准答案:D

32、下面关于switch语句的叙述中,错误的是()
A. case后面的表达式可以是关系表达式
B. switch语句是多分支选择语句
C. 每一个case后面的值必须互不相同,否则会出现矛盾的现象
D. 在执行一个case分支后,可用一个break语句使流程跳出switch语句
标准答案:A

33、定义一个结构体变量后,该变量所占内存大小是()
A.结构体中第一个成员所需内存容量
B.结构体中最后一个成员所需内存容量
C.结构体中各成员所需内存容量总和
D.结构体成员中占内存容量最大者所需的容量
标准答案:C

34、以下C语言共用体类型数据的描述中,不正确的是()
A.共用体变量占的内存大小等于所需内存最大的成员所占的内存
B.共用体类型可以出现在结构体类型定义中
C.在定义共用体变量的同时允许对第一个成员的值进行初始化
D.同一共用体各成员的首地址不相同
标准答案:D

猜你喜欢

转载自blog.csdn.net/Viewinfinitely/article/details/105414712