参考国二《C语言程序设计2020年版》教材个人自学笔记第一章

参考国二《C语言程序设计2020年版》教材自学笔记

声明:该笔记仅为个人笔记,通过教材的自主学习从而进行选取干货部分摘录和个人见解分析,如有不足请多指教,该笔记不做商用化!个人笔记会同步CSDN博客和B站。

第一章 程序设计基本概念

1.1 程序和程序设计

1.1.1 C程序

① C语言是“高级语言”。
② 计算机本身来说,不能直接识别由高级语言编写的程序,只能接受和处理由0和1的代码构成的二进制指令或数据(是面向机器的,也被称作机器语言)。
③ 高级语言编写的程序称为“源程序”。
④ 二进制代码表示的程序称为“目标程序”。
⑤ 将“源程序”转换为机器能接受的“目标程序”是通过“编译程序(具有翻译功能的软件,每种高级语言都有与之对应的编译程序)”实现的。

参考国二《C语言程序设计2020年版》教材个人自学笔记第一章_第1张图片

↑C语言编译程序功能示意图↑

⑥ C语言构成的指令序列称为“C源程序”。
⑦ 按照C语言语法编写C程序,这个过程叫做C语言的代码编写。
⑧ “C源程序”经过C编译程序编译之后,生成一个后缀为“.OBJ”的二进制文件(称为目标文件) ,该“.OBJ”文件与C语言提供的各种库函数连接起来生成一个后缀为“.exe”的可执行文件,而负责将“.OBJ”文件与各种库函数连接起来的软件称为“连接程序(Link)”。

1.1.2 程序设计

① 简单的程序设计一般包含以下几个部分:
(1)确定数据结构。(根据任务要求确定存放数据的数据结构)
注:数据结构是计算机存储、组织数据的方式。
(2)确定算法。(针对第一条来确定整套任务体系的各个步骤,解决问题确定的方法和有限的步骤称作为算法)
(3)编码。(简称“编程”,打代码)
(4)在计算机上调试程序。(简称修bug和优化)
(5)整理并写出文档资料

1.2 算法

① 学习计算机程序设计语言的目的:以语言作为工具,设计出可供计算机运行的程序。
② 编写出程序要:选定合理的数据结构,有一个好的算法,就可以用任何一种计算机高级语言把算法转换为程序。
③算法:为解决某个特定问题而采取的“确定且有限”的步骤。
④算法的五个特性:
(1)有穷性
(2)确定性
(3)可行性
(4)有零个或多个输入
(5)有一个或多个输出
⑤算法可以由“伪代码”和“流程图”来进行描述。
(1)伪代码:近似于高级语言但又不受语法约束的一种语言描述方式。如:
if 九点以前 then
do 私人事务;
if 9点到18点 then
工作;
else
下班;
end if
(2)流程图:通过框和流程图组成来表示算法,形象直观,简单方便,流程线走向无限制,但字描述复杂算法时所占篇幅较多,费时费力不易阅读。

↑开始或终止框↑

↑开始或终止框↑

↑处理框↑

↑处理框↑
↑输入输出框↑

↑输入输出框↑

参考国二《C语言程序设计2020年版》教材个人自学笔记第一章_第2张图片

↑判断框↑
↑流程线↑

↑流程线↑
↑连接点↑

↑连接点↑
(3)随着结构化程序设计方案的出现,出现了新的流程图形式——“N-S流程图”。该流程图完全去掉了流程线,算法的每一步都用一个矩形框来描述,把一个个矩形框按执行的次序连接起来就是一个完整的算法描述。如:

参考国二《C语言程序设计2020年版》教材个人自学笔记第一章_第3张图片

1.3 结构化程序设计和模块化结构

1.3.1 结构化程序

① 结构化程序由三种基本结构组成:
(1)顺序结构:按语句在程序中的先后顺序逐条执行,没有分支,没有转移。
(2)选择结构:if、switch语句都可构成选择结构,执行该种语句时,将根据不同的条件去执行不同分支的语句。
(3)循环结构:根据各自的条件,使同一组语句重复执行多次或一次也不执行。循环结构分为当型循环和直到型循环:
当型循环:当指定的条件满足(成立)时,就执行循环体,否则就不执行。
直到型循环:执行循环体直到指定的条件满足(成立)时就不再执行循环体。
② 由三种基本结构所构成的算法称为“结构化算法”。
③ 由三种基本结构所构成的程序称为“结构化程序”。

1.3.2 模块化结构

① 在程序设计时,用一个个小模块来实现这些功能,每个程序设计人员分别完成一个或多个小模块,这样的程序设计方法称为“模块化的方法”。
② 由一个个功能模块构成的程序结构称为“模块化结构”。
③ 程序设计时,可以把一个大程序分解成若干个相对独立的子程序。
④ C语言是一种结构化程序设计语言。在C语言中没有子程序的概念,它提供的函数可以完成子程序的所有功能;C语言允许对函数单独进行编译,从而可以实现模块化。

文章末尾,祝参加全国计算机等级考试(NCRE)二级的各位朋友能够顺利过关!!!

你可能感兴趣的:(笔记)