【入门级-C++程序设计:6、结构化程序设计】

一、顺序结构、分支结构和循环结构
C++ 程序的逻辑流程由三种基本结构构成:顺序结构、分支结构和循环结构。这三种结构是构建复杂程序的基石,以下结合代码示例详细说明:
1、顺序结构
概念:是最基本的执行流程,指程序按照代码的书写顺序依次执行,每条语句执行一次,从上到下依次进行。
特点:
线性执行,语句按照出现的先后顺序逐条执行,每条语句都会被执行,且仅执行一次。
无跳转,只有一个入口点和一个出口点,执行过程中不会发生流程的跳转或分支。
代码示例:
int a = 5; // 语句1
int b = 10; // 语句2
int sum = a + b; // 语句3
cout << sum; // 语句4
// 严格按照1→2→3→4的顺序执行

2、分支结构
概念:分支结构根据给定的条件判断结果(真或假),选择执行不同的代码块。程序流程在此产生分叉,根据条件选择其中一个分支执行。
特点:
基于布尔表达式的结果选择执行路径。
同一时间只会执行其中一个分支的代码,包括单分支、双分支和多分支等形式。
打破顺序执行的线性流程,来改变程序流程。
通过if-else语句和switch-case语句实现。
代码示例:
int score = 85;
if (score >= 90) {
cout << “优秀”;
} else if (score >= 80) {
cout << “良好”; // 此分支将被执行
} else {
cout << “一般”;
}

3、循环结构
概念:循环结构用于重复执行某段代码,直到满足指定的终止条件为止。它允许程序多次执行相同的代码块,避免代码重复。
特点:
可以重复执行相同代码块,减少代码冗余,提高开发效率。
通过循环条件控制执行次数。
可以通过控制变量调整循环行为。
通过for语句、while语句、do while语句
代码示例:
sum = 0;
for (int i = 1; i <= 10; i++) {
sum = sum + i;
}
cout << sum ;

二、自顶向下、逐步求精的模块化程序设计
概念
自顶向下、逐步求精的模块化程序设计是一种系统化的软件开发方法,它将复杂问题分解为更小、更易管理的部分,从抽象到具体逐步细化。
核心思想
自顶向下(Top-Down):从宏观问题出发,逐步分解为更小的子问题,直到可编程实现。
逐步求精(Stepwise Refinement):软件设计的每一层都进行更详细的定义,每次细化只关注当前层次的细节,通过多次迭代细化设计,逐步补充细节,达到可实现的代码级别。
模块化(Modularity):将功能拆分为独立模块(函数/类),每个模块有明确的功能和接口,模块间低耦合,模块内高内聚,提高复用性和可维护性。

三、流程图的概念及流程图描述
流程图的概念
流程图(Flowchart)是一种用标准化图形符号、箭头和文字说明,直观表示某个过程(如算法、工作流程、业务步骤等)的图形化工具。它通过清晰的逻辑关系展示 “做什么”“怎么做”“先做什么后做什么”,帮助人们理解复杂流程的结构、顺序和分支条件,是跨领域沟通、流程优化和问题分析的重要手段。
流程图的核心要素
图形符号(标准化,遵循 ISO 或 ANSI 标准):
起止框:椭圆形,代表流程的开始或结束(如 “开始”“结束”)。
处理框:矩形,代表具体的操作或处理步骤(如 “输入数据”“计算结果”)。
判断框:菱形,代表需要判断的条件(如 “是否符合条件?”),通常有两个或多个出口(“是 / 否”“是 / 否 / 其他”)。
输入 / 输出框:平行四边形,代表数据的输入(如 “读取文件”)或输出(如 “打印结果”)。
流程线:箭头,指示流程的执行顺序和方向。
连接点:圆形,用于复杂流程图中连接不同部分的流程线(避免箭头交叉混乱)。
文字说明:每个图形符号内需用简洁文字描述具体内容(如处理框写 “计算 a+b”,判断框写 “a>b?”)。
逻辑关系:通过流程线和判断框,明确步骤的顺序(先后关系)、分支(条件选择)、循环(重复执行)等逻辑。

示例:
流程图

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

papership

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值