下列代码片段中存在多个变量声明错误,哪个选项能完全修正所有语法错误? 原始代码: intn,s; double f=3e-; char str[] = "hello"; A. 将intn改为int n,3e-改为3e0 B. 增加分号:intn;s;,修正3e-为3e1 C. 修改char声明为char*,修正指数表达式 D. 拆分intn为int n,补充指数部分如3e-5
答案解析
核心考点:C/C++基础语法与数值表示。
解题思路:
1. intn缺少空格应为int n
2. 3e-是无效的浮点字面量,必须包含指数值
3. char str[]声明正确,无需修改
选项分析:
- A部分正确:修正intn但3e0语法合法但改变了原值
- B错误:未修正intn的根本问题
- C错误:char数组声明无错误
- D正确:完全修正两个语法错误且保留语义
易错点:可能误以为3e-后可接0,但D选项示例3e-5仅为合理补充,实际题目不要求具体数值。
正确答案:D