程序的控制结构与结构化程序设计方法.ppt

程序的控制结构与结构化程序设计方法

榆林学院 信息工程学院;第三章 程序的控制结构与结构化程序设计方法 ;该章的学习内容;本章的学习难点;本章目录;算法与算法的表示方法;算法的概念;数值运算算法: 解决的是求数值解的问题,例如用辗转相除法求两个数的最大公约数等 非数值运算算法: 主要用于解决需要用分析推理、逻辑推理才能解决的问题,例如人工智能中的许多问题,查找、分类等问题;算法的特点;算法举例(1);算法举例(2);算法验证;算法的表示方法;算法的自然语言表示法;传统流程图表示法的图素;传统流程图图素(2);传统流程图举例;N-S结构化流程图表示;N-S流程图举例;伪码表示 ;顺序结构;顺序结构的流程图表示;顺序结构应用举例;编写C语言程序的全过程;选择结构;选择结构的应用场合;关系运算符;关系运算的运算规则(1);关系运算的运算规则(2);关系运算的运算规则⑶;逻辑运算符;逻辑运算的运算规则(1);逻辑运算的运算规则(2);7.C语言没有提供“逻辑型”或“布尔型”等数据类型。只要合法,任何类型表达式都可作为判断条件,可作逻辑量使用,表达式值为非0,即为真值,0为假!;逻辑表达式举例;单选择结构的框图结构;双选择结构的框图结构;双向选择分支结构N-S图;if条件语句;if-else 择条件语句;if (表达式) 语句1; 语句3 执行过程: 当括号内表达式成立时(表达式的值是非0 ) ,执行语句1,然后执行语句3; 当表达式不成立时(等于0 ),直接执行语句3。;if-else 多选条件语句;条件运算;if语句的说明;补足程序段--1;a=a+b; b=a-b; a=a-b;;条件语句举例--1;条件语句举例--2;有一函数: -1 (x0) y= 0 (x=0) 1 (x0) 编一程序,输入一个x值,输出y值。;开关语句--switch;开关语句举例;独立分支开关语句举例;非独立分支开关语句举例;循环结构;s=1*1+2*2+3*3;循环结构的框图结构(1);循环结构的框图结构(2);循环语句;while语句;While程序举例;do~while语句;do~while语句程序举例;for语句;三种循环的比较;永远不会退出的循环为死循环 for (;;) {} while (1) {} do { }while (1) 一般情况下,要极力避免死循环 绝大多数程序不需要死循环。如果出现,往往都是bug 时间过长的循环会造成“假死”效果,也要考虑解决;for语句程序举例--1;for语句程序举例--2;for语句程序举例--2;for语句程序举例--3;#include stdio.h main( ) {long int f1, f2; int i; f1=1; f2=1; for(i=1; i=10; i++) {printf(%12ld %12ld , f1, f2); if(i%2= =0) printf(\n); f1=f1+f2; f2=f1+f2; } };作业:单重循环问题应用;程序举例--1;程序举例--1;程序举例--2;水仙花数程序实例;求定积分--3;a;求面积公式;求定积分程序;程序举例--4;牛顿迭代法;#include stdio.h #include math.h main( ) {float x0, x1, d; x0=1.5; d=( ( (2*x0-4)*x0+3)*x0-6)/((6*x0-8)*x0+3); x1=x0-d; while (fabs(d)1e-6) {x0=x1; d=(((2*x0-4)*x0+3)*x0-6)/((6*x0-8)*x0+3); x1=x0-d; } printf(x1=%f\n,x1); };解法2;二分法;#include stdio.h #include math.h main( ) {float x1, x2, x, f1, f2, f; do{scanf(%f%f,x1,x2); f1=((2*x1-4)*x1+3)*x1-6; f2=((2*x2-4)*x2+3)*x2-6; }while(f1*f20); do{x=(x1+x2)/2; f=((2*x-4)*x+3)*x-6; if (f*f10

文档评论(0)

1亿VIP精品文档

相关文档