- 7
- 0
- 约1.53万字
- 约 15页
- 2018-03-24 发布于山西
- 举报
基本数据类型2
题号 题目 答案 解析 1 请选出可用做C语言用户标识符的一组标识符______。
① void ② a3_b3 ③ For ④ 2a
define _123 _abc DO
WORD IF case sizeof
A、①
B、②
C、③
D、④
本题的考查点是C语言的标识符。
C语言规定,标识符只能由字母、数字和下划线三种符号组成,而且第一个字符必须是字母或下划线。
①中的void是C语言的关键字重名,不合法;
③中的case和C语言的关键字重名,不合法;
④中的2a是数字打头而且sizeof和C语言的关键字重名,不合法。
故本题答案为B。 1 若要使指针p指向一个double类型的动态存储单元,请填空。
p = ______malloc(sizeof(double));
(double *) 本题的考查点是强制类型转换。
函数malloc返回的是void*, 所以若要使指针指向一个double类型,则必须进行类型转换,类型转换格式为:(数据类型 *)。
故本题答案是:(double *)。 5 以下选项中不能作为合法常量的是______。
A、1.234e04
B、1.234e0.4
C、1.234e+4
D、1.234e0 本题考查的是常量表示法。
本题选项中的几个常量都属于指数形式的实型常量。此种类型的常量要求字母e(或E)之前必需有数字,且e后面的指数必须为整数,所以本题中选项B非法。
故本题答案为B。 5 以下选项中可作为C语言合法常量的是______。
A、-80.
B、-080
C、-8e1.0
D、-80.0e
题考查的是常量表示法。
C语言的常量分为整型常量、实型常量和字符型常量。本题中只包含整型常量和实型常量。选项B从形式上来看属于整型常量中的八进制整数,以0开头,但只能用0-7表示八进制数,所以选项B不合法;选项C和D从形式上看属于实型常量,用指数形式表示的实型常量需要注意一点:e(或E)之前必需有数字,且e后面的指数必须为整数,所以选项C和D中e后面为小数和没有数字的形式都不合法;选项A属于实型常量中的十进制小数形式的表示法,是合法的。
故本题答案为A。 22 下列叙述中正确的是______。
A、C语言中既有逻辑类型也有集合类型
B、C语言中没有逻辑类型但有集合类型
C、C语言中有逻辑类型但没有集合类型
D、C语言中既没有逻辑类型也没有集合类型
本题的考查点是C语言中的基本数据类型。
数据类型是所允许的数据及其操作的集合,是高级语言的重要特征。程序设计中可以利用数据类型发现程序中的某些错误。
C语言提供了三大类数据类型,即基本类型、复合类型和地址类型
1、基本类型只代表单个数据;
2、复合类型由基本类型组合而成,可代表一批数据;
3、地址类型可直接表示内存中的地址。
C语言支持的五种基本数据类型:
字符型:表示单个字符;
整型:表示整数,包括基本整型、短整型、长整型和无符号整型;
浮点型:表示实数,精度为6-7位有效数字;
双精度型:表示实数,精度为15-16位有效数字;
无值类型:表示无返回值的函数或无定向指针。
故本题答案为D。
22 若要说明一个类型名STP,使得定义语句STP s;等价于char *s;,以下选项中正确的是______。
A、typedef STP char *s;
B、typedef *char STP;
C、typedef STP *char;
D、typedef char* STP ;
本题的考查点是类型定义typedef。
C语言用类型定义把已有的类型标识符定义成新的类型标识符,经类型定义后,新的类型标识符即可当做原标识符使用。它的一般形式为:
typedef 原类型标识符 新类型标识符
定义一个新的类型名的方法是:
1、先按定义变量(对字符指针类型方法相同)的方法写出定义体(如:char *s;);
2、将变量名换成新类型名(如:将s换成STP);
3、在最前面加上typedef(如:typedef char *STP;)。
故本题答案为D。
22 设有如下说明
typedef struct
{int n;char c;double x;}STD;
则以下选项中
原创力文档

文档评论(0)