模板 信奥AC之路(第一级)
-
第一课 开发环境与基础输出4 主题|小节
-
第二课 算数运算符6 主题|小节
-
第三课 输入与运算3 主题|小节
-
第四课 数值操作4 主题|小节
-
第五课 表达式与运算符3 主题|小节
-
第六课 三目运算与双分支(缺导语+本课目标)2 主题|小节
-
第七课 多分支结构(缺导语+本课目标)1 主题|小节
-
第八课 多if语句1 主题|小节
-
第九课 三种分支结构的比较1 主题|小节
-
第十课 巩固学习分支结构1 主题|小节
-
第十一课 switch与复合语句3 主题|小节
-
第十二课 while循环2 主题|小节
-
第十三课 while循环的简单条件输出1 主题|小节
-
第十四课 while循环的输入序列处理1 主题|小节
-
第十五课 while循环的复杂条件输出2 主题|小节
-
第十六课 while循环与数据统计1 主题|小节
-
第十七课 for循环结构3 主题|小节
-
第十八课 for循环的输入序列处理)1 主题|小节
-
第十九课 深入探索for循环2 主题|小节
-
第二十课 三种循环的对比2 主题|小节
-
第二十一课 程序调试(一)3 主题|小节
-
第二十二课 调试工具的使用2 主题|小节
-
第二十三课 综合复习2 主题|小节
-
第二十四课 学习评估1 主题|小节
### 21.2.1 输出调试技术
“小朋友们,做数学题时,我们会在草稿纸上写下计算步骤,对吗?” 我拿出一张详细的演算纸,”在程序中,我们也可以用’cout’语句来记录程序的每一步!”
[图片:输出调试对比图]
🔬 **实验六:使用输出调试**
“`cpp
#include
using namespace std;
int main() {
cout << "=== 程序开始执行 ===" << endl;
int number = 5;
cout << "第1步:设置初始值 number = " << number << endl;
number = number + 2;
cout << "第2步:加2后 number = " << number << endl;
number = number * 3;
cout << "第3步:乘3后 number = " << number << endl;
cout << "=== 最终结果:" << number << " ===" << endl;
return 0;
}
```
> 💡 输出调试的技巧:
>
> 1. 在重要步骤前后添加输出
> 2. 使用醒目的标记(如===)
> 3. 给每一步编号
> 4. 显示变量的变化过程
### 21.2.2 单步调试方法
“现在我们要学一个非常神奇的功能 – 单步调试!” 我兴奋地说道,”就像看慢动作回放一样,我们可以让程序慢慢地、一行一行地运行!不过在开始之前,我们需要做一些重要的准备工作。”
#### 准备工作:配置调试环境
1. **设置编译器模式**
– 打开”工具” → “编译选项”
– 在”编译器”标签页中
– 将”编译器配置”设置为”Debug”模式
– 点击”确定”保存设置
2. **启用调试信息**
– 继续在”编译选项”中
– 选择”代码生成/优化”标签页
– 找到”连接器”部分
– 将”产生调试信息”从”NO”改为”YES”
– 点击”确定”保存设置
3. **检查工作目录**
– 确保你的程序保存在一个不含中文路径的文件夹中
– 路径中不要有空格
– 建议路径:D:\Programming\Debug_Test
🔬 **实验七:跟我一起调试**
首先,让我们准备一段测试代码:
“`cpp
#include
using namespace std;
int main() {
int score = 0; // 第1行:设置初始分数
cout << "请输入你的分数:"; // 第2行:提示输入 cin >> score; // 第3行:等待输入
if(score >= 60) { // 第4行:判断分数
cout << "恭喜,及格了!" << endl; // 第5行
} else {
cout << "继续加油!" << endl; // 第6行
}
return 0; // 第7行:程序结束
}
```
#### 详细的调试步骤:
1. **保存并编译程序**
- 按Ctrl+S保存程序
- 按F9编译程序
- 确保编译无错误(查看下方信息窗口)
2. **设置断点**
- 将光标移动到第3行(`cin >> score;`)
– 点击行号左侧的灰色区域,或按F9
– 会出现一个红色圆点,这就是断点
– 也可以在第4行(if语句)设置断点
3. **启动调试**
– 点击工具栏上的”调试”按钮,或按F5
– 程序会运行到第一个断点处停止
– 注意观察以下变化:
* 当前行会高亮显示
* 下方会出现”调试”窗口
* “变量”窗口会显示所有变量的值
4. **使用调试窗口**
在调试窗口中,你会看到几个重要的面板:
– 局部变量:显示当前所有变量的值
– 监视:可以添加想要特别关注的变量
– 调用堆栈:显示程序的执行路径
5. **单步执行**
– 按F10执行当前行,移动到下一行
– 当看到`cin`语句时,在控制台窗口输入一个分数
– 继续按F10,观察程序如何根据输入走不同的分支
6. **观察变量变化**
– 在变量窗口中找到`score`变量
– 观察它的值如何随着程序执行而改变
– 可以右键点击变量添加到”监视”窗口
7. **使用监视窗口**
– 在”监视”窗口中右键选择”添加监视”
– 输入`score >= 60`
– 可以看到这个条件的真假值
8. **继续或结束调试**
– F5:继续运行到下一个断点
– Shift+F5:停止调试
– Ctrl+F5:重新启动程序
#### 常见问题解决:
1. **找不到调试按钮**
– 检查是否在”Debug”模式下
– 确认是否已启用调试信息
– 重启IDE可能会有帮助
2. **断点不起作用**
– 确保程序已保存并重新编译
– 检查调试信息是否已启用
– 尝试清除所有断点后重新设置
3. **无法查看变量值**
– 确认程序是否处于调试状态
– 检查变量是否在当前作用域
– 尝试重新编译程序
#### 调试小贴士:
1. 合理设置断点
– 在重要的数据输入点
– 在关键的判断语句前
– 在计算结果的地方
2. 善用监视窗口
– 关注关键变量的变化
– 添加条件表达式
– 实时观察程序状态
3. 掌握快捷键
“`
F5 – 开始/继续调试
F9 – 设置/取消断点
F10 – 单步执行(不进入函数)
F11 – 单步执行(进入函数)
Shift+F5 – 停止调试
“`