- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言教程课件
第三章 C程序的流程设计 一、算法 算法的性质与组成要素 算法是进行操作的方法和步骤。 算法的性质: 解题算法是一有穷动作序列。 序列中只有一个初始动作。 序列中每一个动作仅有一个后继动作。 序列终止,表示问题得到解答,或问题没有解答。 算法的要素: 操作:各种运算、I/O读写均称为操作。计算机算法是由操作组成的。 控制结构: 顺序结构 选择结构 循环结构 算法的描述 自然语言 流程图 伪代码 计算机语言 以求两个数的最大数为例说明几种算法。 自然语言: s1: 输入两个数a,b s2:找出最大数赋给m s3:输出最大数m 伪代码: input a ,b if ab then m=a else m=b end if print m 二、用C语句描述算法 表达式语句 C语言是一种表达式语言,所有操作都通过表达式来实现。 由表达式组成的语句叫表达式语句,它由表达式后加一分号组成。 表达式语句的三种基本类型: 赋值语句:x=sin(y); 函数语句:printf(“a=%d b=%d”,a,b); 空语句: ; 复合表达式语句(逗号表达式):几个表达式语句用“ ,”分隔组合而成,如i=1 , j=2; 。逗号表达式的值为最后一个表达式的值,如 a=(a=6,a*3,a+3) 结果a=9。 复合语句(分程序) C语言允许将一组语句括在一对花括号内,称为复合语句。如: {c=getchar( ); putchar(c); } 在分程序中可定义变量,但只在分程序中有效,且上级分程序中的变量对下级分程序有效,反之无效。如: main( ) { int a=2; {int b=3; printf(“a=%d b=%d ”,a,b); /*正确,可使用上级分程序中定义的变量a*/ } printf(“a=%d b=%d ”,a,b); /*出错,下级分程序定义的变量对上级无效*/ } 三、选择结构程序设计 if … else 结构 例L3-3求一个数的绝对值。 main() { int x,y; scanf(“%d”,x); if (x=0) y=x; else y=-x; printf(“|%d|=%d”,x,y); } 例L3-4 求三个数中的最大值。 if …else 的嵌套 符号函数sign (例L3-4-2) else if结构:是if… else嵌套的一种变形。 (例L3-4-3) switch结构 例L3-6 求分数的等级 switch(cj/10) {case 0: case 1: case 2: case 3: case 4: case 5: dj=c;break; case 6: case 7: dj=b;break; default:dj=a; } 例L3-7 测试输入的是数字、空白还是其它字符。 test_char(int c) { switch(c) {case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: case 9:printf(It is a digit.\n);break; case : case \n: case \t:printf(It is a white.\n);break; default:printf(It is a char.\n); } 例L3-8 联想猜词游戏。 #includestdio.h main() { int c; c=getchar();getchar(); switch(c) { case a: case A: printf(Ada,Algol?\n); c=getchar();getchar(); switch(c) { case c: case D: printf(Ada\n);break; case l: case L: printf(Algol\n);break; default:printf(Input error!\n); }break; case b: case B: printf(Basic,BCDL?\n); c=getchar();getchar(); switch(c) { case a: case
您可能关注的文档
- chap矩阵计算功能.ppt
- CHAP网络最大流.ppt
- chap误差.ppt
- Chap质点运动学.ppt
- chap般均衡论和福利经济学.ppt
- chap计算机控制系统状态设计法.ppt
- chap运算方法与运算器.ppt
- chap静态优化模型.pdf
- chap统计推断.ppt
- Chap面向对象方法学引论.ppt
- 2020版 沪科技版 高中生物学 必修2 遗传与进化《第4章 生物的进化》大单元整体教学设计[2020课标].docx
- 情绪价值系列报告:春节消费抢先看-国证国际证券.docx
- 精品解析:北京市东直门中学2023-2024学年高二下学期3月阶段性考试(选考)物理试题(解析版).docx
- 2020版 沪科技版 高中生物学 必修2 遗传与进化《第4章 生物的进化》大单元整体教学设计[2020课标].pdf
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第1章 人体的内环境和稳态》大单元整体教学设计[2020课标].pdf
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第1章 人体的内环境和稳态》大单元整体教学设计[2020课标].docx
- 液冷盲插快接头发展研究报告-全球计算联盟.docx
- 精品解析:北京市东直门中学2023-2024学年高二下学期3月阶段性考试(选考)物理试题(原卷版).docx
- 精品解析:北京市东直门中学2024届高三考前练习数学试卷(解析版).docx
- 2020版 沪科技版 高中生物学 选择性必修1 稳态与调节《第2章 人体的神经调节》大单元整体教学设计[2020课标].docx
文档评论(0)