对于“程序设计”的工作,许多初学者的理解就是“写代码”。同样,新手们苦恼的问题是,他们只会“写代码”。当接到一个新的任务,不少人总是在第一时间就爬到键盘上去敲代码。敲着敲着,就把自己绕糊涂了。头晕脑胀地坚持下来,程序能运行,阿弥托佛,赶紧撤。这样做出的程序,并不可靠。

  在程序设计中,最重要的不是写程序,而是设计。就像建筑、机械等行业的要画设计图、施工图,程序设计的思路也有必要用图的形式画出来。画图的过程就是思考的过程,由于其直观性,画图的过程本身又促进了思考。在软件工程中,已经发展出了很多种实用的图,为软件产品设计的质量提供保证。这部分练习帮助程序设计者掌握和实践的“程序流程图”。

  讲解视频:

  1、控制结构与流程图    练习和解答

  2、循环控制结构与流程图   练习和解答

  最新推出:能动起来的流程图视频课程——Raptor是一个可视化的,基于流程图的编程工具,不仅可以编写简单程序解决实际问题,其更大的价值在于编程思维的训练。课程适合用C、C++、Java和其他语言学习程序设计,希望学会“如何想算法”的人士,通过流程图训练编程思维,还将有助于养成良好的思维习惯、形成规范的编程思想。

  编程思维启蒙(Raptor)视频课程主页(点链接....)——用C、C++、Java和其他语言学习程序设计,解题没有思路可以用Raptor训练!

  一、什么是程序流程图

  “程序流程图”常简称为“流程图”,是一种传统的算法表示法,程序流程图是人们对解决问题的方法、思路或算法的一种描述。它利用图形化的符号框来代表各种不同性质的操作,并用流程线来连接这些操作。在程序的设计(在编码之前)阶段,通过画流程图,可以帮助我们理清程序思路。下图是一个简单的流程图,描述求两个数的最大公约数的算法(辗转相除法)。

    勘误:最后的结果,该是output a。感谢8楼童鞋指出!

  画流程图是每个程序员的基本功。流程图有其规范,这是用于技术人员之间交流的需要,并不是想怎么画就怎么画。流程图中常用的符号见右图,在前述求最大公约数的流程图中找出对应的部分。

  

  二、三种控制结构的流程图表示

  这部分不再写文字,各种程序设计的教材中都会写一些,至少在讲各种控制结构时,总时要讲的。请参考自己手头能找到的教材,认真品味。
  我们直接提示若干任务,画一画,就会了。

  三、练习题目(各部分分别至少选两个画一画,注意用一张质量好一些纸,书写整齐,确保越画越高兴)

  1、热身
  (1)将英尺转换为米
  (2)输入两个点的坐标,求两点之间的距离并输出
  2、分支程序
  (1)描述一下今晚的计划:如果下雪,校园内玩雪;否则,在103上机(怀念)
  (2)丢硬币决定今晚:正面,K歌;反面:逛街;立起来,学C++

  (3)求函数值:

  

  

  (4)输入一元二次方程ax^2+bx+c=0的各项系数,并根据各系数的值的情况,分别进行求解(考虑对系数的各种可能太复杂时,给自己降低些难度,先从不考虑系统直接求解开始)
  (5)输入个人月收入总额,计算出他本月应缴税款和税后收入(税率等参考第9周任务) 
  3、循环结构
  (1)求1+2+3+...+100(三种循环结构都画一画)
  (2)输出1/3-3/5+5/7-7/9…+19/21的结果 
  (3)一个数如果恰好等于它的因子之和,这个数就称为“完数”。找出1000内的所有完数。
  (4)输出1000以内的所有回文数
  (5)鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,如何买? 
  4、复杂结构的程序

  在解决问题中,利用函数可以让我们利用更“有序”的思维去想问题,“自顶向下,逐步求精”,真理。例:下面的流程图用于输出星号图,体现的是这种思维,右边的图可以嵌入到左边中,替代“输出第i行”的框子,也可以指导我们专门编成一个函数。

  

  任务:
  (1)输出10000以内的所有回文素数。将判断回文和判断素数分别单独画,对应将这两个功能用函数实现的方法。
  (2)画出银行系统的流程图(各具体业务点到为止,不必全画)

  注:在传统教学中,未学写代码,先学画流程。以前的实践中,感觉效果不好。控制结构为何物都晕,如何能画出来。有一定编程体验后再画,是改革的思路。这是编程的一项基本功,务必掌握!

编程基本功训练:流程图画法及练习相关推荐

  1. java完数流程图_编程基本功训练:流程图画法及练习

    对于"程序设计"的工作,许多初学者的理解就是"写代码".同样,新手们苦恼的问题是,他们只会"写代码". 当接到一个新的任务,不少人总是在第一 ...

  2. 编程基本功训练:流程图和UML图的画法及练习

    1. 流程图 对于"程序设计"的工作,很多刚開始学习的人的理解就是"写代码".相同,新手们苦恼的问题是,他们仅仅会"写代码".当接到一个新的 ...

  3. vhdl程序流程图的画法_编程基本功训练:流程图画法及练习

    对于"程序设计"的工作,很多刚開始学习的人的理解就是"写代码".相同,新手们苦恼的问题是,他们仅仅会"写代码".当接到一个新的任务,不少人总 ...

  4. PLC编程基本功:梯形图与控制线路

    原文地址::PLC编程基本功:梯形图与控制线路 PLC的软件编程语言与一般计算机语言相比,具有明显的特点,它既不同于高级语言,也不同于一般的汇编语言,且要满足易于编写和调试的要求. 早期的PLC仅支持 ...

  5. 三种循环的流程图画法总结 (转载)

    三种循环的流程图画法总结 C语言编程中常用的三种循环为for(::),while  和 do-while. 1.  for循环 for循环形式: for(表达式1:表达式2:表达式3) 流程图: 图1 ...

  6. C语言编程课后训练,C语言编程课后训练20道题.doc

    C语言编程课后训练20道题 C语言编程课后训练20道题/*-------------------------------------------------------[程序填空]---------- ...

  7. markdown流程图画法小结

    markdown流程图画法小结 markdown 画图 流程图 最简单的流程图为例 ```mermaid! graph TD  A --> B //在没有(),[].{}等括号的情况之下,图标默 ...

  8. 教师基本功训练计算机,教师教学基本功培训方案

    教师教学基本功培训方案 下面瑞文网小编为大家分享了教师教学基本功培训方案,仅供大家参考. 一.指导思想 为打造一支素质优良.业务精湛的教师队伍,通过教师大练教学基本功活动,牢固树立"以质兴教 ...

  9. java小球落体问题_[Java 编程基本功] (五) 小球落体, 发奖金, 1,2,3,4 可以组成多少个数...

    [Java 编程基本功] (五) 小球落体, 发奖金, 1,2,3,4 可以组成多少个数 第十三题 一球从 100 米高度自由落下, 每次落地后反跳回原高度的一半; 再落下, 求它在第 10 次落地时 ...

最新文章

  1. 同时起两个mysql 起不了_到底是谁!让你在冬天的早晨起不了床?
  2. configure: error: mcrypt.h not found. Please reins
  3. Spring 中 @Component、@Service 等注解如何被解析?
  4. boost::mp11模块使用一些节点生成并行蒙特卡罗模拟的示例
  5. 2015-03-17 current note creation logic in my task
  6. c语言第五章作业,《C语言程序设计》第五章作业.doc
  7. 国外数据库十大风云人物,你认识几个?
  8. 【Git/Github学习笔记】Git常用命令(代码冲突)
  9. JS点击图片位置后增加点位
  10. [笔记分享] [Camera] msm8x25 camera hal 流程记录
  11. postman不跨域 本地开发跨域_为什么postman调接口不会跨域而浏览器会
  12. 台式计算机能不能安装蓝牙驱动,几个方法教你台式电脑怎么安装蓝牙
  13. 网络安全-江湖高手专用的“隐身术”:图片隐写技术
  14. 【路径规划】基于蚁群算法的多配送中心车辆路径优化方法matlab代码
  15. NOIP2020微信步数
  16. 江湖有故人!欢迎来到程序员的江湖
  17. 10GBASE-T SFP+电口模块
  18. 修复 Rancher 2.5.x 内部证书过期导致无法启动的顽疾
  19. 华为NAT的命令总结
  20. 将一个实体类复制到另一个实体类

热门文章

  1. 浅谈汇编器、编译器和解释器
  2. 姿态估计1-02:HR-Net(人体姿态估算)-官方模型训练测试-报错解决
  3. 考研复试英语自我介绍模板
  4. 十四届全国大学生“恩智浦”杯智能汽车竞赛信标组总结(2)
  5. 计算机音乐谱夜空中最亮的星歌词,夜空中最亮的星歌谱及歌词
  6. 收集-网站后台优秀文章
  7. 语言-英语翻译(edx-datascientist 1.2-1.4)
  8. 笔记:图解系统(小林coding)
  9. 一刀工具箱- 在线AI智能写诗工具
  10. 《计算机网络》笔记-第1章计算机网络和因特网