Skip to content

第2章 计算机基础知识与开发环境 ​


🎯 本章学习目标 ​

读完本章,你将能够:

  • ✅ 说出计算机硬件的三大核心部件(CPU、内存、硬盘)及其作用
  • ✅ 区分输入设备与输出设备,列举典型例子
  • ✅ 区分系统软件与应用软件,说出 3 种以上常见操作系统
  • ✅ 掌握文件操作的常用快捷键(Ctrl+C/V/X/S、Delete)
  • ✅ 记住文件后缀名的含义,知道 C++ 源文件后缀是 .cpp
  • ✅ 掌握存储单位换算(bit、Byte、KB、MB、GB、TB)
  • ✅ 理解二进制的基本概念,能进行简单的十进制转二进制
  • ✅ 按顺序说出计算机四代发展的核心元件,知道两位重要人物
  • ✅ 理解"编译型语言"的含义,说清源代码→编译→可执行文件的过程
  • ✅ 独立安装 Dev-C++ 并配置 C++11 标准
  • ✅ 完成"新建→编辑→保存→编译→运行"全流程操作
  • ✅ 看懂简单的编译报错,能排查"漏分号""中文标点"等常见错误
  • ✅ 理解调试(debug)的基本思路,知道分步排查逻辑错误的方法

🗺️ 本章知识图谱 ​

第2章 计算机基础与开发环境
├── 一、计算机硬件组成
│   ├── 三大核心:CPU(大脑)、内存(办公桌)、硬盘(文件柜)
│   ├── 内存 vs 硬盘:临时/长期、断电丢失/不丢
│   └── 输入设备(键盘鼠标) vs 输出设备(显示器打印机)
├── 二、软件与操作系统
│   ├── 系统软件 vs 应用软件
│   ├── 常见操作系统:Windows、Linux、macOS
│   ├── 文件操作与快捷键:Ctrl+C/V/X/S、Delete
│   └── 文件后缀名:.cpp / .txt / .docx / .mp3 等
├── 三、进制与存储单位 ★
│   ├── 二进制:计算机只认识 0 和 1
│   ├── 位 bit 与字节 Byte:1 Byte = 8 bit
│   ├── 存储单位换算:KB / MB / GB / TB(1024进制)
│   └── 十进制转二进制:除2取余,逆序排列
├── 四、计算机发展史
│   ├── 第一代:电子管 (1946, ENIAC)
│   ├── 第二代:晶体管
│   ├── 第三代:集成电路(IC)
│   ├── 第四代:大规模/超大规模集成电路(我们现在)
│   ├── 重要人物:冯·诺依曼(体系结构)、图灵(图灵测试)
│   └── bug 的由来:飞蛾的故事
├── 五、C++ 与 Dev-C++
│   ├── 什么是编译型语言
│   ├── 源代码 → 编译 → .exe可执行文件 → 运行
│   ├── Dev-C++ 界面四区:菜单/工具/编辑/编译
│   └── 新建(Ctrl+N)、保存(Ctrl+S)
└── 六、编译、运行与调试
    ├── F9:只编译(翻译)
    ├── F10:只运行
    ├── F11:编译+运行(最常用)
    ├── 编译报错怎么办:看行号、改第一个错
    └── 调试(debug):分步找逻辑错误的方法

一、计算机的"身体":认识硬件组成 ​

1.1 主机里的三位"主角" ​

计算机的硬件就像人的身体,其中最重要的三位"主角"都住在主机里:

部件生活比喻作用特点
CPU(中央处理器)电脑的"大脑"负责运算和控制,电脑每秒几十亿次的计算都靠它越"聪明"越快,是最核心的部件
内存(内存储器)电脑的"办公桌"临时存放正在处理的数据和程序桌面铺得越开(内存越大),同时干的活越多;一关电,桌上的东西全没了
硬盘(外存储器)电脑的"文件柜"长期保存文件、照片、软件柜子里的东西断电也不会丢;容量大但速度比内存慢

🧠 小剧场:你写作业时,课本从**文件柜(硬盘)里拿出来,摊在办公桌(内存)**上,**大脑(CPU)**飞快地思考做题。关机就像"放学清桌"——办公桌(内存)被擦得干干净净,但文件柜(硬盘)里的课本一样都不少!

高频考点 🔥:

  • CPU 是计算机的"大脑",负责运算和控制,是最核心的部件;
  • 内存临时存储、速度快、断电数据丢失;硬盘长期存储、断电数据不丢——"内存像办公桌,硬盘像文件柜"是经典判断题。

🏆 考点深挖:内存 vs 硬盘(判断题高频坑) ​

对比维度内存(RAM)硬盘(Disk)
作用临时存放正在运行的程序和数据长期保存所有文件和软件
速度很快(直接和 CPU 打交道)较慢(机械转动 / 读写延迟)
容量较小(常见 8G、16G、32G)很大(常见 512G、1T、2T)
断电后数据全部丢失 ✨数据完好保留 ✅
生活比喻办公桌(摊开正在看的书)书架 / 文件柜(所有书都在里面)

⚠️ 判断题"挖坑"常见说法:

  • ❌ "内存可以长期保存数据" → 错!内存断电就清空
  • ❌ "硬盘速度比内存快" → 错!内存快得多
  • ❌ "关机后硬盘数据全部丢失" → 错!硬盘是长期存储
  • ✅ "正在运行的程序放在内存里" → 对

1.2 输入设备与输出设备 ⭐ ​

计算机和人之间要"你来我往",设备按"信息往哪儿流"分成两大类:

  • 输入设备:把信息送进电脑(人 → 电脑),像我们用嘴巴说话;
  • 输出设备:把电脑处理的结果送出来(电脑 → 人),像别人把答案讲给我们听。
类别作用常见设备
输入设备向电脑输入信息键盘、鼠标、麦克风、摄像头、扫描仪、手写板
输出设备把结果输出给人显示器、打印机、音箱、耳机、投影仪、绘图仪

高频考点 🔥:

  • 键盘、鼠标是输入设备;显示器、打印机是输出设备——这是一级考试最高频的判断题原话。
  • 记忆小窍门:"输进去"用手(敲键盘、点鼠标),"输出来"用眼耳(看屏幕、听声音、拿打印纸)。

易错点 ⚠️: 触摸屏比较特殊——手指点按时它是输入设备,显示画面时它又是输出设备,所以"既是输入又是输出"。考试遇到"下列属于输入设备的是",老老实实选键盘或鼠标最保险。


🎮 互动小练习:分类连连看 ​

请把下面的设备拖到对应的篮子里:

设备:键盘 显示器 鼠标 打印机 音箱 扫描仪 麦克风 投影仪

输入篮子 📥输出篮子 📤
键盘、鼠标、扫描仪、麦克风显示器、打印机、音箱、投影仪

二、计算机的"灵魂":软件与操作系统 ​

光有身体没有灵魂可不行。计算机的"灵魂"就是软件——各种程序和数据的总称。软件分两大类:

大类是什么例子生活比喻
系统软件管理整台电脑、为其他软件服务的"大管家"操作系统:Windows、Linux、macOS学校的校长和规章制度
应用软件为完成具体任务而安装的软件微信、浏览器、画图、Dev-C++、WPS语文老师、美术老师等各司其职

操作系统是最重要的系统软件,我们开机后看到的第一个"大管家"就是它。常见的操作系统有:

  • Windows:大多数家用电脑和考试机房用的都是它;
  • macOS:苹果电脑的操作系统;
  • Linux:程序员和服务器常用的开源系统。

🔗 前后关联:GESP 三级会学到更多关于操作系统、数据存储的知识;四级开始接触文件操作,到时候你会更深入地理解"文件存在硬盘上"这句话的含义。


2.1 操作系统的基本操作 ​

操作怎么做快捷键
认识桌面开机后看到的整个屏幕背景叫桌面,上面的小图片叫图标—
新建文件/文件夹在空白处点右键 → 新建—
复制选中文件后"复印"一份,原件还在Ctrl + C
粘贴把复制/剪切的内容放到目标位置Ctrl + V
移动文件方法一:按住左键拖动;方法二:剪切后粘贴Ctrl + X → Ctrl + V
删除文件选中后删除,先进回收站,还能还原Delete
保存文件把写好的内容存进硬盘,不怕断电Ctrl + S
撤销撤销上一步操作Ctrl + Z
全选选中当前所有内容Ctrl + A

文件夹就像分层书包:大文件夹里放小文件夹,小文件夹里再放文件,整整齐齐。文件都有自己的"家庭住址"(路径),例如 D:\C++作业\hello.cpp,一层一层就能找到它。

高频考点 🔥:快捷键组合是选择题常客:

  • 复制 Ctrl+C → 粘贴 Ctrl+V(原件保留,得到"双胞胎");
  • 剪切 Ctrl+X → 粘贴 Ctrl+V(原件搬走,等于"移动");
  • 保存 Ctrl+S(写代码时每隔一会儿就按一次!);
  • 删除 Delete(先去回收站,清空才彻底消失)。

💡 记忆口诀:C=Copy(复制)、V=粘贴的形状像个夹子、X=剪刀(剪切)、S=Save(保存)、Z=往回走(撤销)。


2.2 文件后缀名:文件的"身份标签" ​

每个文件名都由"主文件名 + 小圆点 + 后缀名"组成,如 hello.cpp。后缀名(扩展名)告诉电脑:"我是什么类型的文件,该用什么软件打开我"。

后缀名文件类型用什么软件打开
.cppC++ 源代码文件(我们写的程序!)Dev-C++、VS Code
.txt文本文件记事本
.docxWord 文档Microsoft Word
.exe可执行文件双击直接运行
.mp3音频(音乐)音乐播放器
.mp4视频视频播放器
.jpg / .png图片画图、看图软件

易错点 ⚠️:

  • C++ 程序文件的后缀名是 .cpp(c plus plus 的缩写),这是 C++ 方向必考点!
  • 随意改后缀名(如把 .mp3 改成 .jpg)并不能真的转换文件内容,文件反而会打不开。
  • 如果电脑看不到后缀名,可在文件夹"查看"菜单里勾选"文件扩展名"让它显示。

三、进制与存储单位(📚 拓展 · 超纲)⭐ ​

📚 拓展 · 超纲:按 GESP 考纲,一级对硬件只要求"了解计算机的基本构成";进制转换属于三级、存储单位概念属于二级,一级不作要求。本节内容对理解计算机很有帮助、历年真题也偶有涉及,故保留,但请把它当作"拓展阅读",不必当作一级必背重点。

学编程必须懂一点"计算机的数学"——计算机只认识 0 和 1,所有数据在它眼里都是一串二进制数字。这一节我们就来搞懂:二进制是什么?存储单位怎么换算?十进制怎么转二进制?


3.1 二进制:计算机的"母语" ​

我们人类日常使用的是十进制——满十进一,每位可以是 0~9 十个数字。

而计算机里只有**"通电"和"断电"两种状态,所以计算机天生使用二进制**——满二进一,每位只能是 0 或 1。

进制规则每位可选数字生活例子
十进制满十进一0,1,2,3,4,5,6,7,8,9数数、花钱、考试分数
二进制满二进一0, 1开关、灯亮灯灭、计算机内部

🍎 生活比喻:十进制就像我们有十根手指头,数到十就得进位;二进制就像一盏灯,只有"亮(1)"和"灭(0)"两种状态,要表示更大的数,就得用多盏灯排在一起。

二进制的每一位叫一个 bit(比特),是计算机里最小的信息单位——它只能存一个 0 或一个 1。


3.2 字节 Byte:8 个比特凑一组 ​

一个 bit 太小了,只能表示 0 或 1。计算机为了方便管理,把 8 个 bit 组成一组,这一组就叫一个 Byte(字节)。

1 Byte = 8 bit

一个字节能存多少种不同的信息呢?8 位二进制,每位 2 种选择,一共是 2⁸ = 256 种不同的组合——足够放下所有英文字母、数字和常用符号了(这就是我们后面要学的 ASCII 编码)。

单位英文大小关系能存什么
位bit (b)最小单位,0 或 1一个开关的状态
字节Byte (B)1 Byte = 8 bit一个英文字母 / 一个数字

⚠️ 注意区分大小写! 小写的 b 是 bit(比特),大写的 B 是 Byte(字节)。网速里说的 100Mbps 是 100 mega bits per second(每秒100兆比特),而文件大小说的 100MB 是 100 mega bytes(100兆字节),差了 8 倍哦!


🏆 考点深挖:存储单位换算表 ​

字节还是太小了,存不了多少东西。就像我们用"克、千克、吨"来衡量重量一样,计算机也有一套更大的存储单位,它们之间的换算关系是 1024(因为 1024 = 2¹⁰,正好是二进制的整数次幂)。

单位英文换算关系大概能存什么
字节B (Byte)基础单位1 个英文字符
千字节KB1 KB = 1024 B一小段文字
兆字节MB1 MB = 1024 KB一张高清照片 / 一本电子书
吉字节GB1 GB = 1024 MB一部电影 / 一个大型软件
太字节TB1 TB = 1024 GB一个大硬盘的容量

高频考点 🔥:

  • 换算关系:相邻两个大单位之间都是 1024 倍(不是 1000!);
  • 1 KB = 1024 Byte,1 MB = 1024 KB,1 GB = 1024 MB;
  • 从小到大:B < KB < MB < GB < TB。

💡 记忆口诀:B-K-M-G-T,每次乘 1024。就像"个-十-百-千-万",每次进位换个名字。


🧮 小练习:单位换算连连看 ​

请把左右两边相等的连起来:

左边右边
1 Byte1024 GB
1 KB8 bit
1 MB1024 B
1 GB1024 KB
1 TB1024 MB
🔑 点击查看答案
左边右边
1 Byte→ 8 bit
1 KB→ 1024 B
1 MB→ 1024 KB
1 GB→ 1024 MB
1 TB→ 1024 GB

3.3 十进制转二进制:除 2 取余法 ⭐ ​

考试中常考"把一个十进制数转换成二进制",有一个标准方法叫**"除 2 取余,逆序排列"**。

规则:把十进制数反复除以 2,记录每次的余数,直到商为 0,然后把余数从下往上倒着写出来,就是二进制结果。

举个例子:把 10 转换成二进制

10 ÷ 2 = 5  余 0   ↑
 5 ÷ 2 = 2  余 1   │
 2 ÷ 2 = 1  余 0   │  从下往上读
 1 ÷ 2 = 0  余 1   │(逆序排列)
─────────────
结果:1010(二进制)

所以十进制的 10 = 二进制的 1010。

我们来验证一下:二进制 1010 从右往左(第 0 位、第 1 位……):

  • 第 0 位:0 × 2⁰ = 0 × 1 = 0
  • 第 1 位:1 × 2¹ = 1 × 2 = 2
  • 第 2 位:0 × 2² = 0 × 4 = 0
  • 第 3 位:1 × 2³ = 1 × 8 = 8

加起来:0 + 2 + 0 + 8 = 10 ✅ 正好对得上!

高频考点 🔥:

  • 方法名:除 2 取余,逆序排列(这八个字是选择题标准答案);
  • 最后一个余数是二进制的最高位(最左边那一位);
  • 一级常考 10 以内、20 以内的小数字转换,建议把 1~10 的二进制记熟。

📋 1~10 的二进制速查表 ​

十进制二进制十进制二进制
116110
2107111
31181000
410091001
5101101010

💡 观察规律:2 的幂次方(2、4、8、16...)的二进制都是 1 后面跟若干个 0——

  • 2¹ = 2 → 10(1个0)
  • 2² = 4 → 100(2个0)
  • 2³ = 8 → 1000(3个0)
  • 2⁴ = 16 → 10000(4个0)

四、计算机的"成长史":四代发展简览 ​

计算机可不是一开始就这么小巧聪明的,它经历了四代演变,越变越小、越变越快:

代次时代核心元件特点代表
第一代1946年起电子管像灯泡一样的电子管,体积巨大、耗电惊人ENIAC(首台通用计算机,重30吨!)
第二代1950年代晶体管晶体管取代电子管,更小、更省电、更可靠—
第三代1960年代集成电路(IC)把成百上千个元件做在一小块芯片上—
第四代1970年代至今大规模/超大规模集成电路一块芯片上集成上亿个元件,**个人电脑(PC)**普及我们的台式机、笔记本、手机

4.1 两位"计算机之父" ​

计算机的发展离不开几位伟大的科学家,一级考试中常考他们的贡献:

人物称号主要贡献
艾伦·图灵
Alan Turing
计算机科学之父、人工智能之父提出"图灵机"理论模型(现代计算机的理论基础);提出"图灵测试"(判断机器是否具有智能的方法)
冯·诺依曼
John von Neumann
现代计算机之父提出"冯·诺依曼体系结构":计算机由五大部件组成(运算器、控制器、存储器、输入设备、输出设备);采用二进制;存储程序(程序和数据存在内存里)

🔥 冯·诺依曼体系结构是高频考点,五大部件要记住:运、控、存、输、输(运算器、控制器、存储器、输入设备、输出设备)。我们学的 CPU(运算器+控制器)、内存(存储器)、键盘/鼠标(输入)、显示器(输出)就是这个体系的体现。

💡 巧记区别:图灵是"理论派"——提出了计算机应该是什么样的数学模型;冯·诺依曼是"工程派"——确定了计算机具体怎么造、怎么工作。两人共同奠定了现代计算机的基础。


🐛 趣味故事:bug 的由来 ​

1947年,科学家在一台发生故障的计算机里真的找到了一只飞蛾(bug)卡在继电器元件中!技术人员把这只飞蛾贴在了工作日志上,并标注"第一个真正的 bug"。从此,程序里的错误就被叫做"bug(虫子)",找错误、改错误的过程就叫"debug(调试,捉虫子)"——这个词我们写 C++ 时天天都会用到。

今天,计算机已经融入生活的每个角落:智能手机、智能手表、扫地机器人、自动驾驶汽车、人脸识别、人工智能……它们的"大脑"本质上都是一代代发展起来的计算机。

高频考点 🔥:

  • 四代计算机的核心元件顺序要背熟:电子管 → 晶体管 → 集成电路 → 超大规模集成电路;
  • 我们现在使用的个人电脑、智能手机属于第四代计算机。

🧩 考法拆解:排序题怎么考 ​

选择题里常考"按时间先后排序",记住两条线索:

  1. 元件越来越小:电子管(灯泡大)→ 晶体管(指甲盖大)→ 集成电路(芯片级)→ 超大规模集成电路(纳米级)
  2. 速度越来越快、价格越来越便宜:从只有军队、大学才用得起,到今天人手一部智能手机

💡 送分口诀:电→晶→集→大(电子管、晶体管、集成电路、大规模集成电路),四个字背下来,排序题直接秒杀。


五、认识 C++ 与 Dev-C++ ​

5.1 C++ 是什么? ​

计算机只认识 0 和 1 组成的"机器语言",人直接写 0 和 1 太痛苦了,于是人们发明了编程语言当"翻译官"。C++ 就是一门世界闻名、功能强大的编程语言,信息学竞赛(如 CSP-J/S)和 GESP 的 C++ 方向都使用它。

C++ 有一个重要身份:它是一门编译型语言。什么意思?打个比方:

🍳 假设你拿着一份中文菜谱,但厨师只听得懂"机器语"。你不能直接把菜谱塞给他,得先请一位翻译官把整本菜谱翻译成机器语,翻译无误后,厨师才能照着做出菜来。

  • 你写的 C++ 代码 = 中文菜谱(源代码)
  • 翻译官 = 编译器(Compiler)
  • 翻译的过程 = 编译(Compile)
  • 翻译好的机器语文件 = 可执行文件(.exe)
  • 厨师做菜 = 运行程序

这就是 C++ 和很多"说完一句马上做一句"的语言最大的不同:C++ 程序必须先完整编译(翻译)成功,才能运行。


🔍 深度辨析:编译型 vs 解释型(了解即可) ​

对比项编译型语言(C++)解释型语言
运行方式先全部翻译成机器码,再一次性运行读一行、翻译一行、执行一行
翻译工具编译器(Compiler)解释器(Interpreter)
运行速度快(翻译好了直接跑)稍慢(边翻译边跑)
能否直接运行❌ 必须先编译成功✅ 写完就能跑
产物生成 .exe 可执行文件不生成独立可执行文件

💡 一级只要求掌握" C++ 是编译型语言" 这一点,解释型语言作为拓展了解即可。


5.2 Dev-C++:我们的"编程厨房" ​

写 C++ 需要一个把"编辑代码 + 编译 + 运行"都集成在一起的软件,叫做集成开发环境(IDE)。Dev-C++是一款免费、轻量的集成开发环境,常用于C++教学和考前练习

安装:从正规网站下载 Dev-C++ 安装包,双击后一路"下一步"即可完成安装;安装时语言可选择"简体中文"。

界面认识:打开 Dev-C++ 后,主要有四个区域——

区域位置作用
菜单栏最上方"文件""编辑""运行"等所有命令都在这里
工具栏菜单栏下方一排小按钮:新建、保存、编译、运行、编译运行等
代码编辑区中间大白区我们敲代码的地方,就像写字的作业本
编译器窗口下方显示编译结果:成功会提示,报错会在这里列出错误信息

5.3 新建与保存源代码文件 ​

步骤操作快捷键
新建源代码菜单 文件 → 新建 → 源代码Ctrl + N
保存文件菜单 文件 → 保存,文件名用英文,如 hello.cppCtrl + S

易错点 ⚠️:

  • 保存时"保存类型"要选 C++ source(*.cpp),文件名建议用英文和数字(如 test1.cpp),不要用中文名,避免考试系统出问题;
  • 写代码时随时 Ctrl+S 保存,养成习惯,断电也不慌。

⚙️ 重要配置:开启 C++11 标准 ​

Dev-C++ 默认可能使用较老的 C++ 标准,建议手动开启 C++11:

  1. 打开菜单:工具 → 编译选项
  2. 在"编译器"选项卡中,勾选"编译时加入以下命令"
  3. 在文本框中填入:-std=c++11
  4. 点击"确定"保存

🔥 为什么要开 C++11? GESP 考试大纲明确说明"考题以 C++11 标准为准"。开启 C++11 后,一些新语法特性才能正常使用,也和考试环境保持一致。一级阶段虽然用不到太多高级特性,但养成正确配置的习惯很重要。


六、编译、运行与调试:让 C++ 程序"跑起来" ​

6.1 三个快捷键要分清 ​

代码写好后,Dev-C++ 的"运行"菜单里有三个关键命令:

命令快捷键作用生活比喻
编译F9只翻译,不运行(只检查菜谱翻得对不对)把中文菜谱翻译成厨师语,但先不做菜
运行F10只运行(前提是已经编译过)直接让厨师做菜(菜谱已经翻译好了)
编译运行F11先编译、成功后立刻运行(最常用!)翻译完立刻做菜,一步到位

高频考点 🔥:Dev-C++ 中"编译运行"的快捷键是 F11,也可以直接点工具栏上的"编译运行"按钮(▶ 形状)。


6.2 编译成功 vs 编译报错 ​

  • 编译成功:下方编译器窗口显示类似 编译结果... 错误: 0,随后弹出一个黑底白字的窗口(叫"控制台窗口",同学们爱称"小黑窗"),程序的运行结果就显示在里面。看完按任意键关闭。
  • 编译报错:编译器窗口会出现红色的 错误(error) 提示,并告诉你第几行出了什么问题。这时程序不会生成可执行文件,也无法运行。

🔍 编译报错怎么办?别慌! 编译器是个严格的"翻译官",它会大喊:"第 X 行我看不懂!"我们只要:

  1. 看编译器窗口里的行号,跳到代码对应位置;
  2. 对照常见错误检查:标点是不是英文半角?语句末尾的分号 ; 有没有漏?括号、引号是不是成对?单词拼错没有?
  3. 改完后重新按 F11,直到错误数为 0。

易错点 ⚠️:

  • 编译报错时,先看第一条错误!有时一个小错误(如漏了分号)会引发后面一大串报错,改掉第一个,后面常自动消失;
  • C++ 里所有标点符号(分号、引号、大括号等)都必须是英文半角符号,打成中文标点必报错;
  • 程序能运行但结果不对,那不叫编译错误,叫逻辑错误(bug),需要我们调试(debug):一行行检查、对照预期结果,把"虫子"捉出来。

6.3 调试入门:程序能跑但结果不对怎么办? ​

程序能运行,说明语法没问题、编译通过了。但输出结果和预期不一样——这叫逻辑错误(bug),需要通过调试(debug) 来找到问题。

🍎 生活比喻:编译错误就像"作文里有错别字",老师直接打回去让你改字;逻辑错误就像"作文跑题了"——字都写对了,但内容不对,需要你重新理解题目、调整思路。

调试四步法(一级版) ​

遇到逻辑错误,不要慌,按这四步来:

步骤做什么具体方法
第1步重读题目确认自己真的理解了题目要求,输入是什么?输出应该是什么?
第2步手算样例拿一个简单的例子,自己用纸笔算出正确答案,和程序输出对比
第3步输出中间值在可疑的地方加 cout 把变量的值打印出来,看看每一步是不是对的
第4步逐段排查把程序分成几段,一段段注释掉测试,缩小"嫌疑范围"

💡 一级最常用的调试技巧就是"加 cout"——在你觉得可能出错的地方,把变量的值打印出来,看看是不是和你想的一样。这是最简单也最有效的方法,被称为"printf 调试法"(因为 C 语言里用 printf 打印)。

常见逻辑错误 Top 5 ​

排名错误类型具体表现怎么避免
1变量初始值错累加器没初始化为 0,结果越算越大定义变量时就想好初始值是多少
2边界条件错循环多了一次或少了一次(<= 和 < 搞混)用小数据手动验证循环次数
3运算符优先级错该加括号的地方没加,运算顺序不对不确定优先级时,果断加括号
4变量类型不够大int 存不下,结果溢出变成奇怪的数数据大就用 long long
5输入输出格式错多了空格、少了换行、顺序反了仔细对照题目要求的输出格式

🔗 后续章节关联:等我们学完变量、循环、分支,你会对这些逻辑错误有更深的体会。现在先记住:调试就是"猜哪里错了 → 验证 → 再猜 → 再验证"的过程,耐心点,虫子总会被捉到的!


🚨 一级三大编译错误速查表 ​

错误现象编译器提示关键词最可能的原因怎么改
漏写分号expected ';' before ...上一行语句末尾漏了 ;到报错行的上一行末尾补分号
中文标点stray '\xxx' in program用了中文的 ;""(),检查输入法,切换成英文半角重新打
名字拼错xxx was not declared变量名 / cout / cin 拼错了,或漏了头文件检查拼写;确认包含了 <iostream>

七、动手:在 Dev-C++ 里敲出第一个程序 ​

光说不练可不行!跟着下面六步走,亲手让电脑跟你打招呼:

① 打开 Dev-C++
② 新建:文件 → 新建 → 源代码(Ctrl + N)
③ 在编辑区输入下面的代码(所有符号都是英文半角!)
④ 保存:文件 → 保存(Ctrl + S),命名为 hello.cpp
⑤ 编译运行:运行 → 编译运行,或直接按 F11
⑥ 观察弹出的"小黑窗",看到运行结果就成功啦!

输入以下代码(C++11):

cpp
#include <iostream>     // 头文件:让程序学会"输入和输出"
using namespace std;    // 使用标准命名空间

//int main() { ... }:
//主函数,是程序的唯一入口,程序从这里开始执行

int main()              // 主函数:程序从这里开始执行
{
    cout << "你好,C++!" << endl;          // 输出一行字并换行
    cout << "我的第一个程序运行成功啦!" << endl;
    return 0;           // 告诉系统:程序顺利结束
}

按 F11 后,"小黑窗"里会显示:

你好,C++!
我的第一个程序运行成功啦!

--------------------------------
Process exited after 0.05 seconds with return value 0

🎉 恭喜!你已经完成了一个 C++ 程序员的"成人礼"!

📌 代码小解读(详细语法后面几章会讲,现在先混个脸熟):

  • #include <iostream>:引入"输入输出工具箱",没有它程序就不会"说话";
  • int main() { ... }:主函数,程序永远从大括号 { } 里的第一行开始执行;
  • cout << "..." << endl;:把引号里的话显示到屏幕上,endl 表示换行;
  • 每条语句末尾都有一个分号 ;,就像每句话结尾的句号,漏了会编译报错。

✍️ 拓展任务:三行自我介绍 ​

修改 Hello World 程序,输出三行关于你自己的介绍:

我的名字是XXX
我今年X岁
我喜欢XXX
🔑 点击查看参考代码
cpp
#include <iostream>
using namespace std;

int main()
{
    cout << "我的名字是小明" << endl;
    cout << "我今年10岁" << endl;
    cout << "我喜欢编程" << endl;
    return 0;
}

💡 想输出几行就写几句 cout,每行末尾加 endl 就会换行。试试改成你自己的信息吧!


八、📝 实战练习 ​

练习题 1(单选题) ​

题目: 下列设备中,属于计算机输入设备的是( )

A. 显示器  B. 打印机  C. 键盘  D. 音箱

🔑 点击查看答案与解析

答案: C

解析: 输入设备负责把信息送进电脑,键盘、鼠标是最典型的输入设备;显示器、打印机、音箱都是输出设备。


练习题 2(单选题) ​

题目: 计算机中被称为"大脑"、负责运算和控制的核心部件是( )

A. 内存  B. CPU  C. 硬盘  D. 显示器

🔑 点击查看答案与解析

答案: B

解析: CPU(中央处理器) 是计算机的"大脑";内存是"办公桌"(临时存储、断电丢失),硬盘是"文件柜"(长期保存、断电不丢)。


练习题 3(单选题) ​

题目: 下列关于内存和硬盘的说法,正确的是( )

A. 内存断电后数据不会丢失 B. 硬盘断电后数据会全部丢失 C. 内存临时存储数据,硬盘长期保存数据 D. 硬盘的存取速度比内存快

🔑 点击查看答案与解析

答案: C

解析: 内存像办公桌,临时存放正在处理的数据,断电即丢失;硬盘像文件柜,长期保存、断电不丢,但速度比内存慢。


练习题 4(单选题) ​

题目: 我们现在使用的个人电脑和智能手机,属于第( )代计算机

A. 一  B. 二  C. 三  D. 四

🔑 点击查看答案与解析

答案: D

解析: 四代计算机核心元件依次是:电子管 → 晶体管 → 集成电路 → 大规模/超大规模集成电路。个人电脑、智能手机属于第四代。


练习题 5(单选题) ​

题目: 用 C++ 编写的源代码文件,保存时的后缀名是( )

A. .txt  B. .cpp  C. .docx  D. .mp3

🔑 点击查看答案与解析

答案: B

解析: C++ 源代码文件的后缀名是 .cpp;.txt 是文本文件,.docx 是 Word 文档,.mp3 是音频文件。


练习题 6(单选题) ​

题目: 在 Dev-C++ 中,写完代码后想要"编译并运行"程序,应该按的快捷键是( )

A. F5  B. F9  C. F10  D. F11

🔑 点击查看答案与解析

答案: D

解析: F9 是编译,F10 是运行,F11 是编译运行(最常用);也可以点工具栏上的"编译运行"按钮。


练习题 7(判断题) ​

题目: C++ 是编译型语言,源代码必须先经过编译翻译成机器语言,才能运行。( )

🔑 点击查看答案与解析

答案: ✅ 正确

解析: C++ 程序需要编译器先把源代码编译成机器语言(可执行文件)才能运行。编译不通过时,要根据编译器窗口的错误提示修改代码,再重新编译。


练习题 8(判断题) ​

题目: 在 Dev-C++ 中,代码里的分号、括号打成中文标点也没关系,编译器一样能看懂。( )

🔑 点击查看答案与解析

答案: ❌ 错误

解析: C++ 代码中所有标点符号都必须是英文半角符号,使用中文标点会导致编译报错。另外还要注意:语句末尾的分号不能漏、括号引号要成对。


练习题 9(单选题) ​

题目: 下列操作中,能实现"把文件从一个文件夹移动到另一个文件夹"的是( )

A. 复制 + 粘贴 B. 剪切 + 粘贴 C. 直接删除 D. 重命名

🔑 点击查看答案与解析

答案: B

解析:

  • A 复制+粘贴:原件还在,得到一个副本,不是"移动";
  • B 剪切+粘贴:原件被"剪下来"贴到新位置,实现了移动;
  • C 删除:文件进入回收站,不是移动;
  • D 重命名:只改名字,不改变位置。

快捷键:剪切 Ctrl+X,粘贴 Ctrl+V。


练习题 10(判断题) ​

题目: 程序能运行但输出结果不对,这属于编译错误,需要重新编译。( )

🔑 点击查看答案与解析

答案: ❌ 错误

解析: 能运行说明编译通过了;结果不对叫逻辑错误(bug),需要检查代码逻辑、进行调试(debug),不是重新编译能解决的。编译错误是代码语法有问题、根本跑不起来;逻辑错误是代码能跑,但思路写错了。


练习题 11(单选题) ​

题目: 下列关于计算机存储单位的说法,正确的是( )

A. 1 KB = 1000 Byte B. 1 Byte = 10 bit C. 1 GB = 1024 MB D. 1 MB = 1024 GB

🔑 点击查看答案与解析

答案: C

解析:

  • A 错:1 KB = 1024 Byte(不是 1000)
  • B 错:1 Byte = 8 bit(不是 10)
  • C 对:1 GB = 1024 MB ✅
  • D 错:关系写反了,1 GB = 1024 MB

记忆:从小到大依次是 B → KB → MB → GB → TB,相邻两个之间都是 1024 倍。


练习题 12(单选题) ​

题目: 十进制数 5 转换成二进制是( )

A. 101  B. 110  C. 100  D. 111

🔑 点击查看答案与解析

答案: A

解析: 用"除 2 取余,逆序排列"法:

  • 5 ÷ 2 = 2 余 1
  • 2 ÷ 2 = 1 余 0
  • 1 ÷ 2 = 0 余 1

余数从下往上读:101。

验证:1×4 + 0×2 + 1×1 = 4 + 0 + 1 = 5 ✅


练习题 13(单选题) ​

题目: 提出"冯·诺依曼体系结构"的科学家是( )

A. 图灵  B. 冯·诺依曼  C. 爱因斯坦  D. 牛顿

🔑 点击查看答案与解析

答案: B

解析:

  • 冯·诺依曼提出了现代计算机的体系结构(五大部件、二进制、存储程序);
  • 图灵提出了图灵机理论模型和图灵测试;
  • 爱因斯坦是物理学家,牛顿是物理学家和数学家。

记忆窍门:"冯·诺依曼"名字里就带"体系"的感觉——他确定了计算机"长什么样"。


练习题 14(单选题) ​

题目: 下列不属于冯·诺依曼体系结构五大基本部件的是( )

A. 运算器  B. 控制器  C. 存储器  D. 电池

🔑 点击查看答案与解析

答案: D

解析: 冯·诺依曼体系结构的五大部件是:运算器、控制器、存储器、输入设备、输出设备(口诀:运、控、存、输、输)。电池是供电设备,不属于五大基本部件。


练习题 15(判断题) ​

题目: 程序能运行但输出结果不对,这时应该通过调试(debug)来找出逻辑错误。( )

🔑 点击查看答案与解析

答案: ✅ 正确

解析: 能运行说明编译通过了,结果不对属于逻辑错误(bug),需要调试(debug)。一级最常用的调试方法是"加 cout 输出中间值",看看每一步变量的值是不是和预期一致。


九、📊 考点总结表 ​

考点重要程度出题形式高频易错点
CPU/内存/硬盘的作用与比喻⭐⭐⭐⭐选择/判断内存断电丢失、硬盘长期保存记反
输入设备与输出设备区分⭐⭐⭐⭐⭐选择/判断把显示器、打印机误判为输入设备
系统软件与应用软件、常见操作系统⭐⭐⭐选择/判断不知操作系统属于系统软件
文件操作与快捷键(Ctrl+C/V/X/S/Z/A、Delete)⭐⭐⭐⭐⭐选择/判断复制与剪切效果记反;忘记粘贴步骤
文件后缀名(.cpp 等)⭐⭐⭐⭐选择C++ 后缀 .cpp 记不牢
二进制概念、bit 与 Byte⭐⭐⭐⭐选择/判断1 Byte = 8 bit 记反;b 和 B 分不清
存储单位换算(KB/MB/GB/TB,1024进制)⭐⭐⭐⭐选择/计算把 1024 记成 1000
十进制转二进制(除2取余,逆序排列)⭐⭐⭐⭐选择/计算余数顺序搞反(忘了逆序)
计算机四代发展(电子管→晶体管→集成电路→超大规模集成电路)⭐⭐⭐⭐选择四代顺序与元件对应错乱
冯·诺依曼体系结构(五大部件)⭐⭐⭐⭐选择五大部件记不全
图灵与冯·诺依曼的贡献⭐⭐⭐选择/判断两人贡献搞混
C++ 是编译型语言、编译的概念⭐⭐⭐⭐⭐选择/判断以为写完代码能直接运行
Dev-C++ 新建/保存(.cpp)/编译运行(F11)⭐⭐⭐⭐⭐选择/实操F9/F10/F11 混淆;文件名用中文
编译报错看错误提示、英文半角符号⭐⭐⭐⭐判断/实操报错不看行号;中文标点导致报错
调试(debug)基本方法⭐⭐⭐⭐选择/判断混淆编译错误和逻辑错误;不知道怎么调试
C++11 标准配置⭐⭐选择/实操不知道要开 C++11

┌──────────────────────────────────────────────────────────────┐
│              ⭐ 第2章必背速记卡(计算机基础与开发环境)           │
├──────────────────────────────────────────────────────────────┤
│  1. 三大硬件:CPU=大脑(运算控制)、内存=办公桌(临时断电丢)       │
│     、硬盘=文件柜(长期断电不丢)                                │
│  2. 输入设备:键盘、鼠标;输出设备:显示器、打印机            │
│  3. 操作系统是系统软件:Windows、Linux、macOS                 │
│  4. 快捷键:复制Ctrl+C、剪切Ctrl+X、粘贴Ctrl+V、保存Ctrl+S    │
│     、删除Delete、撤销Ctrl+Z、全选Ctrl+A                      │
│  5. C++源文件后缀 .cpp;编译后生成 .exe 可执行文件             │
│  6. 1字节=8位(1Byte=8bit);存储单位B→KB→MB→GB→TB,每次×1024  │
│  7. 十进制转二进制:除2取余,逆序排列                         │
│  8. 四代计算机:电子管→晶体管→集成电路→超大规模集成电路      │
│  9. 冯·诺依曼体系五部件:运算器、控制器、存储器、输入、输出    │
│ 10. 图灵=理论(图灵机/图灵测试),冯·诺依曼=工程(体系结构)      │
│ 11. C++是编译型语言:先编译、后运行;F9编译、F10运行、F11全做  │
│ 12. 编译报错看行号,先改第一条错误;标点必须是英文半角          │
│ 13. 编译错误=语法错跑不起来;逻辑错误=跑起来结果错(bug)       │
│ 14. 调试四步:读题→手算→加cout看中间值→逐段排查              │
│ 15. Dev-C++要配置 -std=c++11 才能使用C++11标准                │
└──────────────────────────────────────────────────────────────┘

📖 下章预告:第3章我们将深入学习 C++ 的编程规范——程序框架、大括号、分号、注释、缩进……这些"交通规则"是写对代码的第一道关卡,也是考试中最容易丢分的地方。准备好了吗?

百炼成钢,融会贯通