电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

ch3.三种基本结构的程序设计

  • 资源ID:70807557       资源大小:1.87MB        全文页数:47页
  • 资源格式: PPT        下载积分:16金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要16金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

ch3.三种基本结构的程序设计

,C语句,和其它高级语言一样,C语言的语句用来向计算机系统发出操作指令,一个语句经编译后产生若干条机器指令。一个实际的程序应当包含若干个语句。C语句都是用来完成一定操作任务的,声明部分的内容不应称为语句。 考虑:int a;和 int a=1; 前者不是一个C语句,它不产生机器操作,而只是对变量定义。 后者是一个C语句,为表达式语句(a=1为赋值表达式),2,C语句分类,表达式语句:由一个表达式加上一个分号构成一个语句,最典型的是赋值语句。如: i+; k=k+2; m=n=j=3; a=1; x+y;也是,但无实际意义。 函数调用语句:由一次函数调用加一个分号构成一个语句,例如:printf(“s=%dn”,s); 空语句:只有一个分号的语句,什么也不做,有时用来做被转向点,或循环语句中的循环体。 复合语句:可以用 把一些语句括起来成为复合语句,又称分程序。在语法上相当于一条语句。 注:后面没有分号(;),3,C语句分类,控制语句,完成一定的控制功能(9种) if( ) else (条件语句) for( ) (循环语句) while( ) (循环语句) dowhile( ) (循环语句) continue (结束本次循环语句) break (中止执行switch语句或循环语句) switch (多分支选择语句) goto (无条件转向语句) return (从函数返回语句),4,C语句,5,程序的三种基本结构,结构化程序:由三种基本结构(顺序、条件、循环)反复嵌套构成的程序。 结构化程序设计基本思想:(函数) “自顶向下、逐步求精、模块化”,6,顺序结构程序设计,赋值语句:变量表达式; if (a=b)0) 不能写成 if (a=b;)0) x=a; x=a; int a=b=c=10;正确? 是错误的,应该写成: int a,b,b; a=b=c=10; 或者: int a=10,b=10,c=10; 顺序结构就是一个操作执行完成后就接着执行紧随其后的下一操作。,8,与赋值表达式有何区别,顺序结构例:输入三角形的三条边长,求其面积,#include #include void main() float a,b,c,p,s; printf(“Input a,b,c=“); scanf(“%f,%f,%f“, ,9,面积公式: 其中,注意:sqrt( )是求平方根的函数。必须把头文件“math.h”包含到程序中来。凡是在程序中用到数学函数库中的函数,都应当包含math.h头文件。,运行结果: Input a,b,c=3,4,5 s= 6.00,顺序结构例:输入两个整数,交换其值。,#include void main() int a,b,t; printf(“Input a,b=“); scanf(“%d,%d“, ,10,运行结果: Input a,b=5,10 old data: a=5,b=10 new data: a=10,b=5,如果是你,如何交换,选择结构程序设计if语句,12,if语句是用来判定所给定的条件是否满足,根据判定的结果决定执行给出的两种操作之一。,if(表达式) 语句,if(表达式) 语句1 else 语句2,if语句-例1:输入两个整数,由大到小输出,#include void main() int a,b; printf(“Input a,b=“); scanf(“%d,%d“, ,13,if(ab) printf(“%d,%dn“,b,a); if(a=b) printf(“%d,%dn“,b,a);,int t=0; if(ab) t=a;a=b;b=t; printf(“%d,%dn“,a,b);,运行结果: Input a,b=5,10 10,5,这部分还可以怎么写,if语句-例2:判断由键盘输入的字符类型,#include void main() char c; printf(“Input a character:“); c=getchar(); if(c='0' ,14,注意考虑的完备,if 语句的嵌套,15,#include main() int x,y; scanf(“%d”, ,配对关系:else总是与它上面的最近的if配对,例:表示一个函数:,如何改,条件运算符:exp1 ? exp2 : exp3,若if语句中,在表达式为“真”和“假”时,且都只执行一个赋值语句给同一个变量赋值时,可以用简单的条件运算符来处理。 条件运算符要求有3个操作对象,称三目运算符,它是C语言中唯一的一个三目运算符。 条件表达式的一般形式为: 表达式1 ? 表达式2 : 表达式3 它的执行过程如右图:,16,ch若为大写转为小写,否则不变: ch=(ch=A,switch 语句,if语句本质上是两路分支的选择结构;要用于多路分支时,if语句就得采用嵌套形式,这使程序的可读性降低。 对于多路分支问题,C语言提供了更加简练的语句:多分支选择语句(switch语句)来实现多种情况的选择。 一般形式: switch (表达式) case 常量表达式1: 语句1 case 常量表达式2: 语句2 . case 常量表达式n: 语句n default :语句n+1 ,17,switch语句的执行过程是: 先计算表达式的值,并逐个与case后面的常量表达式的值相比 相等,执行相应常量表达式后的语句,之后不再判断,顺序往下执行直到遇到break语句(跳出switch)或执行到switch语句结束; 都不等,执行default后面的语句 (如果没有default部分,则此时switch相当于一个空语句)。,switch 语句的注意事项,switch后面括号内的表达式,可以为任何类型。一般多为易于判断相等的类型:整型、字符型或枚举型,单、双精度型的值由于计算误差而难以进行相等比较 case后面常量表达式的值必须互不相同,否则会出现出现互相矛盾的现象 多个case可以共享一组执行语句 各个case和default的出现次序不影响执行结果 switch结构可以嵌套,即在一个switch语句中可以嵌套另一个switch语句,但要注意break语句只能跳出当前层的switch语句,18,实践是检验真知的唯一途径 不需要死记,要动手去实验,为什么这样规定?,switch 语句举例,用数字17代表周一周日,从键盘上输入一个数字,输出对应的是工作日还是假日。,19,int a;printf(“Input data:“);scanf(“%d“, ,此程序要能执行还需要加什么,循环结构,循环结构是程序中一种很重要的结构。其特点是,在给定条件成立时,反复执行某程序段,直到条件不成立为止。给定的条件称为循环条件,反复执行的程序段称为循环体。语言提供了多种循环语句,可以组成各种不同形式的循环结构。 C语言可实现循环的语句: while 语句 do while 语句 for 语句 用goto 和 if 构成循环,21,while语句,while语句的一般形式为: while(表达式) 语句 表达式:循环条件;语句:循环体。 语义:计算表达式的值,为真时, 执行循环体语 执行过程:,22,例:语句求1+2+3+.+100的值 #include main() int i1,sum=0; while(i=100) sum=sum+i; i+; printf(“%d“,sum); ,这里语句要理解为一条语句(包括复合语句)和空语句,while语句分析下面程序的运行结果,23,#include void main() /程序1 int x=2; while(x-) printf(“%dn“,x); ,#include void main() /程序4 int x=0; while(x-) x-; printf(“%dn“,x); ,#include void main() /程序3 int x=2; while(x) printf(“%dn“,x); ,#include void main() /程序2 int x=2; while(x-); printf(“%dn“,x); ,1 0,-1,(死循环) 2 2 ,-1,dowhile语句,一般形式: do 语句 while(表达式); 执行过程:先执行循环体中的语句,然后再判断表达式是否为真, 如果为真则继续循环;如果为假, 则终止循环。(do-while循环至少要执行一次循环语句),24,这里语句要理解为一条语句(包括复合语句和空语句),例:求自然对数e的近似值。其中: int n=1,i=1; float e=1 do n*=i; e+=1./n; i+; while(1./n=1e-7);,while语句和dowhile语句的对比,例:输入一个自然数,求从该自然数到10的和。,25,main() int sum=0,i; scanf(“%d”, ,main() int sum=0,i; scanf(“%d”, ,运行结果: 输入1时 sum=55 输入11时: sum=0,运行结果: 输入1时 sum=55 输入11时: sum=11,for语句,在C语言中,for语句使用最为灵活, 一般形式: for(表达式1;表达式2;表达式3) 语句 执行过程(如右图): 1)求解表达式1。 2)求解表达式2,其值 为真:执行循环体语句,转到3); 为假:结束循环,转到5) 3)求解表达式3。 4) 转到2) 5) 循环结束,执行for后面的语句。,26,for语句的说明,for循环中的“表达式1(循环变量赋初值)”、“表达式2(循环条件)”和“表达式3(循环变量增量)”都是选择项, 即可以缺省,但“;”不能缺省。 值得注意的是:表达式2省略相当于while(1) 表达式1和表达式3可以是一个简单表达式也可以是逗号表达式:如:for(i=0,j=100;i=100;i+,j-) k=i+j; 表达式2一般是关系表达式或逻辑表达式,但也可以是数值表达式或字符表达式,只要其值非零,就执行循环体,如 for(;(c=getchar()!=n;) printf(“%c”,c);,27,有疑问吗?大家去试试!,用for语句实现输出0到10的数字,28,int i; for(i=0;i=10;i+) printf(“%d“,i);,int i=0; for(;i=10;i+) printf(“%d“,i);,int i=0; for(;i=10; printf(“%d“,i),i+);,int i=0; for(;i=10;) printf(“%d“,i); i+; ,int i=0; for(; printf(“%d“,i),i+) if(i10) break;,int i=0; for(;) if(i10) break; printf(“%d“,i); i+; ,这样写正确吗 还有更多吗,请大家思考,goto语句,是一种无条件转移语句, 使用格式为: goto 标号;/在程序的某处有:标号:语句 其中标号是一个有效的标识符,这个标识符加上一个“:”一起出现在函数内某处, 执行goto语句后,程序将跳转到该标号处并执行其后的语句。 标号必须与goto语句处于同一个函数中,但可以不在一个循环层中。 通常goto语句与if条件语句连用, 当满足某一条件时, 程序跳到标号处运行。 goto语句通常不用,主要因

注意事项

本文(ch3.三种基本结构的程序设计)为本站会员(san****019)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.