Initial commit: C++ courseware

This commit is contained in:
xiaolinquan committed 2026-11-05 22:51:02 +08:00
commit 4a4ee7c287
1789 files changed
+373489

No files matched your search

@@ -0,0 +1,51 @@
### 阶段测试题目1 参考答案与评分标准
**第一部分(12分)**
1. A, B, C, B, B (每空2分)
2. A (2分)
**第二部分(14分)**
3. (每项2分:找出错误1分,原因1分)
* `3rd_place`: 数字开头 `money$`: 含特殊符号 `double`: 关键字
4. (每题2分,少分号扣1分)
* `int age = 10;` `char grade = 'B';` `double pi = 3.14;` `int a, b;`
**第三部分(16分)**
5. (每空2.5分)
* 2 2.5 2 2
6. (每空2分)
* 15 30 0
**第四部分(12分)**
7. (每空2分)
`>>` `cin` `*` `<<`
8. (4分,全对才得分)
* 4, 1, 3, 2 (正确顺序:声明 -> 提示 -> 输入 -> 计算输出)
**第五部分(5分)**
9. 正确的选项:D (2分)
* 错误分析 (3分): A: 应用单引号包裹 B: int 存小数会丢失精度(或逻辑错误) C: endl 前箭头反了/字符串后箭头反了
**第六部分(20分)**
10. (每空2分)
* `#include <iostream>` `using namespace std;` `int main()` `return 0;`
11. (每题4分)
* `double weight;` `cin >> weight;` `cout << weight;`
**第七部分(9分)**
12. `cout` 用 `<<`,`cin` 用 `>>` (3分)
13. 换行 (3分)
14. 不参与运行。为了解释代码,方便人阅读。(3分)
**第八部分(12分)**
15. (每空3分)
* `3.14` `>> r` (只写 `>>` 扣1分) `pi * r * r` (写 `3.14 * r * r` 也算对) `area`
@@ -0,0 +1,219 @@
# C++ 编程阶段测试卷 1
​ **姓名:_____________________________________ 得分: **
## 第一部分:数据类型(共 12 分)
**Q1. 连线填空(每空 2 分,共 10 分)**
请把左边的**现实生活数据**与右边最合适的**C++变量类型**进行匹配,填写 A、B 或 C。
1. 班级的人数 ---> ( )
2. 超市里一斤半苹果的价格 ---> ( )
3. 一个空格 ---> ( )
4. 今天的气温 ---> ( )
5. 圆周率 ---> ( )
* **选项**:
* A. `int` B. `double` C. `char`
**Q2. 单项选择(2 分)**
在 C++ 中, 如果想要输出一句话(例如:你好),那么必须用什么符号包裹起来? ( )
* A. 双引号 `"` B. 单引号 `'` C. 不需要符号 D. 括号 `()`
---
## 第二部分:变量命名与声明(共 14 分)
**Q3. 找错题(每处 2 分,共 6 分)**
下列变量名中,有 **3个** 是错误的,请将错误的变量名写在横线上并说明原因。
`apple_count` / `3rd_place` / `money$` / `myHeight` / `double` / `score_math`
* 错误1:\_\_\_\_\_\__\_\___\_\_(原因:\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_)
* 错误2:\_\_\_\_\_\__\_\___\_\_(原因:\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_)
* 错误3:\_\_\_\_\_\__\_\___\_\_(原因:\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_)
**Q4. 代码填空(每题 2 分,共 8 分)**
请根据注释的要求,在下划线位置写出**完整**的一行变量定义的代码。
```cpp
// 1. 定义一个整数变量 age,并赋值为 10
____________________
// 2. 定义一个字符变量 grade,赋值为 B
____________________
// 3. 定义一个小数变量 pi,赋值为 3.14
____________________
// 4. 定义两个整数变量 a 和 b (不赋值)
____________________
```
---
## 第三部分:预测输出(共 16 分)
**Q5. 计算结果预测(每空 2.5 分,共 10 分)**
请写出下列代码执行后的输出结果。
* **代码 A**
```cpp
int a = 5;
int b = 2;
cout << a / b << endl;
```
**输出:**\_\_\_\_\_\_\_\_\_\_
* **代码 B**
```cpp
double a = 5;
int b = 2;
cout << a / b << endl;
```
**输出:** \_\_\_\_\_\_\_\_\_\_
* **代码 C**
```cpp
int a = 10;
cout << a / 4 << endl;
cout << a % 4 << endl;
```
**输出:**\_\_\_\_\_\_\_\_\_\_ 和 \_\_\_\_\_\_\_\_\_\_
**Q6. 变量追踪(每空 2 分,共 6 分)**
写出下列代码每一部分执行完那一刻,`box` 的值是多少。
```cpp
int box = 10;
box = box + 5; // 1. 此时 box 是多少?
box = box * 2; // 2. 此时 box 是多少?
box = 0; // 3. 此时 box 是多少?
cout << box << endl;
```
**结果:** 1. \_\_\_\_\_\_\_\_\_\_ 2. \_\_\_\_\_\_\_\_\_\_ 3. \_\_\_\_\_\_\_\_\_\_
---
## 第四部分:填空与排序(共 12 分)
**Q7. 程序补全(每空 2 分,共 8 分)**
这是一个计算长方形面积的程序,请在下划线位置补全代码。
```cpp
int main() {
double width;
double height;
cout << "请输入长方形的宽:";
cin ____ width;
cout << "请输入长方形的高:";
____ >> height;
// 计算面积公式
double area = width ____ height;
cout << "面积是:" ____ area << endl;
return 0;
}
```
**Q8. 代码排序(4 分)**
假设用户想输入两个数字计算和。请给下列代码行排序(在括号里按顺序填 1, 2, 3, 4)。
( ) `cout << "两个数的和是:" << a + b << endl;`
( ) `int a, b;`
( ) `cin >> a >> b;`
( ) `cout << "请输入两个整数:";`
---
## 第五部分:找问题(共 5 分)
**Q9. 分辨正确与错误的代码(可能有多个正确/错误选项)**
A. `char c = H;` B. `int x = 3.14;`
C. `cout << "Hello" >> endl;` D. `double price = 10.5;`
* **正确的是**(2分): __\_\_\_\_\_\_\_\_\_\___
* **错误分析**(3分):请任选一个错误的选项,说明它错在哪里。
选项 \_\_\_\_\_\_\_\_\_\_错误,原因是:\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
---
## 第六部分:代码默写(共 20 分)
**Q10. 默写 C++ 程序骨架(每空 2 分,共 8 分)**
请在下方的横杠处默写出一个最简单的 C++ 程序框架。
```cpp
// 1. 引入头文件 (工具箱)
__________________________
// 2. 使用标准命名空间
__________________________
// 3. 主函数 (程序的入口)
__________________________ {
// (需要完成的代码逻辑写在这里,此处略)
// 4. 程序结束返回值
______________
}
```
**Q11. 翻译代码(每题 4 分,共 12 分)**
**场景**:我们需要记录一位同学的体重(小数),请根据题意将自然语言翻译为合适的代码。
1. **定义变量**:声明一个名为 `weight` 的小数类型变量。
代码:________________________________________________________________________
2. **输入**:从键盘读取数据存入 `weight`。
代码:________________________________________________________________________
3. **输出**:在屏幕上打印出这个变量的值。
代码:________________________________________________________________________
---
## 第七部分:简答题(共 9 分)
**Q12. 箭头的方向(3 分)**
`cout` 后面应该用什么符号?`cin` 后面应该用什么符号?
* 答:_____________________________________________________________________________________________________
**Q13. `endl` 的作用(3 分)**
`cout << ... << endl;` 中的 `endl` 有什么作用?
* 答:_____________________________________________________________________________________________________
**Q14. 注释的作用(3 分)**
注释会参与程序的运行吗?为什么我们要写注释?
* 答:_____________________________________________________________________________________________________
---
## 第八部分:综合题(共 12 分)
**Q15. 将数学公式翻译成代码(每空 3 分,共 12 分)**
**场景**:手动输入半径(取3.14),计算圆的面积,并在下方的横杠处填写正确的代码。
已知圆的面积公式:$area(面积) = \pi(3.14) \times r(半径) \times r(半径)$
```cpp
// 省略头文件
int main() {
double pi = _______;
double r;
double area;
cout << "请输入圆的半径:";
___________;
area = ______________________________;
cout << "面积是:" << _______;
return 0;
}
```