欢迎来到天天文库
浏览记录
ID:48657881
大小:2.13 MB
页数:55页
时间:2020-01-18
《4顺序和选择结构程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第4章顺序和选择结构程序设计1、运算符(算术、赋值、关系、逻辑、增1/减1、位、逗号、求字节数、指针)2、优先级(逻辑非>算数运算符>关系运算符>逻辑与和逻辑或>赋值运算符)3、结合性4、不同数据类型数据间的混合运算(自动转换和强制转换)第2、3章是给编写C程序做了一些准备知识第三章回顾复习4.1.1结构化程序设计思想的产生程序设计最初是追求空间和时间效率的,而现在追求的是程序的清晰度。一个好的程序首先应该具有良好的可读性,以方便检测、修改和维护。1971年NiklausWirth首次提出了结构化程序设计的思想
2、。这个思想的重点是:不要求一步就编制成可执行的程序,而是要分若干步进行,也就是逐步求精。结构化程序设计方法又称为“自顶向下”法或“逐步求精”法。§4.1结构化程序设计4.1.2结构化程序设计的三种基本结构三种基本结构为:顺序结构、选择结构和循环结构。早在1966年就证明了只要有顺序、选择和循环三种形式的控制结构,就足以导出其它各式各样的程序结构。a.顺序结构顺序结构就是一组逐条执行的可执行语句。按照书写的顺序,自上而下的执行。b.选择结构选择结构是一种先对给定的条件进行判断,再根据判断的结果执行相应的命令的结构
3、。4.1.2结构化程序设计的三种基本结构c.循环结构它是指多次重复执行同一组命令的结构。具有循环结构的程序一般必须指定循环的终止条件,以免进入无限循环(死循环)状态。用流程图来表示以上三种结构,更加直观形象、易于理解。本书中使用的是:传统流程图和N-S结构图(盒图)。4.1.2结构化程序设计的三种基本结构1.顺序结构的流程图:P60图4-1ABAB(a)传统流程图(b)N-S流程图实例:“回家”的顺序结构流程图:开锁开门进屋(a)传统流程图(b)N-S流程图开锁开门进屋4.1.2结构化程序设计的三种基本结构2.
4、选择结构的流程图:P60图4-3(a)传统流程图(b)N-S流程图ABP真假P真假AB选择结构流程图的实例:(a)传统流程图(b)N-S流程图电影要开场真假看电影喝咖啡看电影喝咖啡电影要开场真假4.1.2结构化程序设计的三种基本结构3.循环结构有两种:当型循环和直到型循环当型循环结构的流程图:P61图4-5(a)传统流程图(b)N-S流程图AP真假P为真A直到型循环结构的流程图:P61图4-6P62图4-7、4-8实例(a)传统流程图(b)N-S流程图P为真A假AAP真当型循环结构:先判断后执行A直到型循环结构
5、:先执行A后判断直到型循环结构比当型循环结构多执行一次循环体§4.2语句与分程序一、语句:用来对数据进行加工(完成操作任务)。是构成程序的基本单位。通常一个C程序由若干个函数(系统、用户)组成。二、C语句的分类可分为三大类:简单语句、复合语句、空语句(一)简单语句(1)表达式语句:由一个表达式后跟;构成,赋值语句:赋值表达式后加;号如s=3.1415*r*r;++i;(与++i不同)函数调用语句:函数调用表达式加一个;号如:printf(“Helloworld!”);(2)结构控制语句:控制程序流向选择语句
6、(2个):if…elseswitch循环语句(3个):forwhiledo…while转向语句:continuebreakreturngoto(一)简单语句(二)复合语句:将一组语句括在一对{}中如:while(i<100)//计算1到100的和{sum+=i;i++;}注意:1、复合语句的{}之后不能有;号2、复合语句中可以是简单句、复合语句、空语句(三)空语句:;/*仅有一个;号*/空语句什么也不做。有时用作被转向点,或者循环语句提供空体如:做大系统时,初步给出一个框架,以后再写具体语句如:for(i=0;
7、i<=10;i++);//以后编码;或者得到一个i值空语句赋值语句:即赋值表达式后加;号构成要区分赋值表达式与赋值语句如:if((a=b)>0)t=a;前-表达式后-语句注意:赋值表达式可包含在其它表达式之中,而赋值语句不行赋值语句只能作为一条单独的语句,或放在符合语句中赋值语句用途很广§4.3顺序结构程序设计顺序结构程序:程序的执行顺序,就是程序的书写顺序顺序程序设计的步骤可以归纳为:(1)用预处理命令包含头文件或进行宏定义(2)定义变量(分配内存空间)(3)为变量赋初值(4)计算(5)输出结果例4.1:编写
8、程序:输入x和y,交换它们的值,并输出交换前后的数。#include“stdio.h”voidmain(){doublex,y,temp;printf(“pleaseinputtwodouble:”);scanf(“%lf%lf”,&x,&y);printf(“beforechangedx=%6.2lfy=%6.2lf”,x,y);temp=x;//temp变量来完成交换工作x
此文档下载收益归作者所有