单选题
1、第123题 (1.0分) 题号:601 下面四个选项中,均是不合法的浮点数的选项是()。
A
160. 0.12 e3
B
123 2e4.2 .e5
C
-.18 123e4 0.0
D
-e3 .234 1e3
答案解析
正确答案:B
解析:
这道题考查的是 C 语言(或大多数编程语言)中**浮点数常量**的合法表示形式。
### 核心知识点
在 C 语言中,浮点数有两种表示形式:
1. **十进制小数形式**:由数字和小数点组成,必须包含小数点。例如:`3.14`、`.5`、`5.`、`-0.1`。
2. **指数形式(科学计数法)**:由尾数、字母 `e` 或 `E`、阶码组成。
- **规则 1**:字母 `e` 或 `E` 之前必须有数字(即尾数部分不能为空)。
- **规则 2**:字母 `e` 或 `E` 之后必须是**整数**(可以是正整数、负整数或零,但不能是小数或空)。
---
### 选项逐一分析
**A. `160.` `0.12` `e3`**
- `160.`:合法。这是十进制小数形式,等价于 160.0。
- `0.12`:合法。标准的十进制小数。
- `e3`:**不合法**。`e` 前面没有数字(尾数缺失)。
- **结论**:该选项中既有合法的也有不合法的,不符合“均是不合法”的要求。
**B. `123` `2e4.2` `.e5`**
- `123`:**不合法**作为浮点数。这是一个整型常量,没有小数点,也没有指数部分,因此它不是浮点数。
- `2e4.2`:**不合法**。指数部分 `4.2` 是小数,而指数部分必须是整数。
- `.e5`:**不合法**。`e` 前面没有数字(虽然有点号,但点号后直接跟 e,缺乏有效的尾数数字)。
- **结论**:这三个选项**均是不合法**的浮点数表示。符合题意。
**C. `-.18` `123e4` `0.0`**
- `-.18`:合法。等价于 `-0.18`,是合法的十进制小数。
- `123e4`:合法。指数形式,尾数是 123,指数是 4(整数)。
- `0.0`:合法。标准的十进制小数。
- **结论**:该选项中三个都是合法的浮点数。
**D. `-e3` `.234` `1e3`**
- `-e3`:**不合法**。`e` 前面没有数字。
- `.234`:合法。等价于 `0.234`,是合法的十进制小数。
- `1e3`:合法。指数形式,尾数是 1,指数是 3。
- **结论**:该选项中既有合法的也有不合法的,不符合“均是不合法”的要求。
---
### 最终结论
只有选项 **B** 中的三个表达式均不符合浮点数的语法规则。
**正确答案:B**
题目纠错
c语言选择判断题库
相关题目
单选题
1、第136题 (1.0分) 题号:620 下列运算符中优先级最高的是()。
单选题
1、第135题 (1.0分) 题号:499 以下常量中,能够代表逻辑”真”值的常量是()。
单选题
1、第134题 (1.0分) 题号:143 C语言中以下几种运算符的优先次序()的排列是正确的。
单选题
1、第133题 (1.0分) 题号:170 关于return语句,下列正确的说法是()。
单选题
1、第132题 (1.0分) 题号:128若int类型数据占两个字节,则下列语句的输出为()。int k=-1; printf(”%d,%u\n”,k,k);
单选题
1、第131题 (1.0分) 题号:705 若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是()。
单选题
1、第130题 (1.0分) 题号:167 下列语句中,不正确的是()。
单选题
1、第129题 (1.0分) 题号:651 以下定义语句中,错误的是()。
单选题
1、第128题 (1.0分) 题号:125 下列程序的输出结果是()。
单选题
1、第127题 (1.0分) 题号:639 以下能正确定义数组并正确赋初值的语句是()。
