[第04讲]用流程图描述算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第9行
a>=b?
输出 a≥b 第10行
输出 a<b 第12行
结 束
拓展提高--用流程图表示高斯的算法 用流程图表示高斯的算法
1+2+3+4+5+ … +99+100 = ?
开 始
输出 101×50=5050 ×
Hale Waihona Puke Baidu
结 束
智力故事连环画 本地播放 远程播放
Mr. Chen 陈家良 GsChenJL@126.com http://www.ZXGL.com/omsNoi/
s=0; i=1;
累加 i=i+1; 计算 s=s+i;
i<=100?
否 输出 s
是
结 束
结构化流程图-- (4) while 循环结构
开 始
赋值
// 文件名:Sum100_while.c 文件名: // 功 能:计算 s=1+2+3+…+99+100 int main() { int i,s; i=1; s=0; while (i<=100) { printf("s=%d,i=%d ,s+i=%d\n",s,i,s+i); \ s=s+i; i=i+1; } printf("\n 1+2+3+ … +99+100=%d",s); \ printf("\n \n"); system("pause"); }
结构化流程图-- (2) if-else 选择结构
开 始
输入两个整数 a,b 是 否
// 文件名:Judge.c 文件名: // 功 能:判断两个整数的大小 int main() { int a,b; scanf("%d",&a); scanf("%d",&b); if (a>=b)
a>=b?
输出 a≥b 输出 a<b
int main() { int i,s; s=0; i=1; <=100;i++) 100;i++ for (i=1;i<=100;i++) { printf("s=%d,i=%d ,s+i=%d\n",s,i,s+i); \ s=s+i; } printf("\n 1+2+3+ … +99+100=%d",s); printf("\n \n"); system("pause"); }
结束 分析
第1组: 1+100=101 组 第2组: 2+99 =101 组 第3组: 3+98 =101 组 …… 第50组: 50+51=101 组
=101
开始
第1步: 101×50=5050 步 ×
智力故事连环画 本地播放 远程播放
结束
算法的特点
算法( 算法(Algorithm)是为解决一个特定问题而采取 ) 的确定的,有限的方法和步骤. 的确定的,有限的方法和步骤.
i=1; s=0;
赋值 i=i+1; 赋值 s=s+i;
i<=100?
否 输出 s
是
结 束
结构化程序设计--判断两个整数的大小 判断两个整数的大小
网络协作知识建构 (1) 观看教师的讲解 (2) 记录自己的疑惑 (3) 查阅本节课讲义 (4) 小组协作探究 (5) 反思
本地播放 远程播放
开 始
第7-8行 输入两个整数 a,b 是 否
算法中的每一个步骤都应当能有效地执行, 算法中的每一个步骤都应当能有效地执行,并得到
有效性: 确定的结果. 有效性: 确定的结果.
结构化流程图的符号
流程图是用一些图框表示各种操作. 流程图是用一些图框表示各种操作. 用图形表示算法,直观形象,易于理解. 用图形表示算法,直观形象,易于理解.
开始/结束 起止框
A
复习
B
流程图
C
编写程序
设计算法 1. 算法的概念 2. 算法的特点 3. 算法的描述
描述算法 1. 结构化流程图 2. 用流程图描述算法
编写程序 1. 根据流程图编程 2. 调试程序 3. 优化算法
高斯小时候的故事
1+ 2+3+4+5+ … +99 + 100 = ?
开始
第1步:1+2=3 步 3+3=6 第2步: 步 6+4=10 第3步: 步 …… 4950+100=5050 第99步: 步
全国青少年信息学奥林匹克竞赛 网络学习社区 语言 网络学习社区C语言
http://www.ZXGL.com/omsNoi/
C语言程序设计 语言程序设计
主编 李明
主讲 Mr. Chen
上海交大出版社
2009年7月29日
版权所有 Mr.Chen Copyright(2009)
04
第04讲 用流程图描述算法 讲
�
printf("%d ≥ %d",a,b); else printf("%d < %d",a,b); printf("\n \n"); system("pause"); }
结 束
结构化流程图-- (3) for 循环结构
开 始
赋值
// 文件名:Sum100_for.c 文件名: // 功 能:计算 s=1+2+3+…+99+100
有穷性: 一个算法包含的操作步骤是有限的. 有穷性: 一个算法包含的操作步骤是有限的. 确定性: 算法中的每一个步骤都是确定的. 确定性: 算法中的每一个步骤都是确定的.
个 信息. 有输入: 算法执行时需要输入( 有输入: 算法执行时需要输入(0~n个)信息. 个 信息. 有输出: 算法执行后必须输出( 有输出: 算法执行后必须输出(1~n个)信息.
输入/输出 输入输出框
赋值/计算 事件处理框
条件 判断框 流程线
结构化流程图-- (1) 顺序结构
开 始 输 入 赋值/计算 赋值 计算 输 出 结 束
// 文件名:Yingwuxueshe.c 文件名: // 功 能:在屏幕上显示用户输入的整数 int main() { int i; printf("请输入一个整数:"); 请输入一个整数: 请输入一个整数 scanf("%d",&i); printf("你输入的整数是:%d",i); 你输入的整数是: 你输入的整数是 printf("%c",7); printf("\n \n"); system("pause"); }