- 1、本文档共68页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章 最简单的C程序设计 ——顺序程序设计 本章授课内容 3.1算法是程序的灵魂 1.算法的概念 2.怎么样表示一个算法 3.2结构化程序设计方法的基本思想 3.3C语句综述 3.4赋值表达式和赋值语句 3.5数据输入输出的概念 3.6字符数据的输入输出 3.7简单的格式输出 3.1 算法是程序的灵魂 1.算法的基本概念 所谓算法,就是指为解决特定问题而采取的有限操作步骤。 2 算法的特征 有穷性:—— 算法通过有限的步骤,即能解决问题。 确定性:—— 算法做的每一步都是确定的,而不是含糊的。 可行性:——算法做的每一步都能有效的被执行,并且能 得到确定的结果。 输入: —— 执行算法必须有零个或多个输入。 输出: —— 至少有一个或多个输出。 3 算法的表示 自然语言描述法 流程图描述法 伪代码描述法 N-S流程图描述法 1 自然语言描述法 自然语言描述法: 自然语言描述就是用人们日常使用的语言,如:汉语、英语或其他语言来描述算法。如例1.1就是用自然语言来描述求解最大公约数的算法。用自然语言来描述和表示算法的优点是通俗易懂,缺点是但文字过于冗长,容易出现歧义性。因此,除了简单的问题外,一般不用自然语言描述算法。 2 流程图描述法 算法常用“流程图”描述,更直观,容易阅读和理解。 流程图中基本的图形符号 例1-2的程序流程图 问题:求两个数的和。 void main() { int i,j,sum; i=2; j=-3; sum=i+j; printf(“结果是:%d\n”,sum); } 将[例1-4]的处理流程用程序流程图表示出。 3 伪代码描述法 伪代码(pseudo code)是用介于自然语言和计算机程序设计语言之间的文字和符号来描述算法,即用计算机程序设计语言中具有的关键字和汉字相结合的方法表示算法的操作流程。用伪代码表示算法,并无固定的、严格的语法规则,只要求把意思表达清楚,但书写的格式要写成清晰易懂的形式。可以很方便的向计算机语言过渡。 例如:“打印x的绝对值”的算法。 if x =0 then 输出 x else 输出 -x C语言的控制结构语句和自然语言结合起来描述算法 比画流程图省时、省力,且更容易转化为程序 不能运行 4 N- S 图表示法: 1973年美国学者I . Nassi 和 B . Shneiderman提出一种新的流程图形式。 N-S流程图符号: 顺序结构:图1-2 选择结构:图1-3 循环结构:图1-4,图1-5 程序设计方法 自顶向下 是将复杂、大的问题划分为小问题,找出问题的关键、重点所在,然后用精确的思维定性、定量地去描述问题。 逐步求精 是将现实世界的问题经抽象转化为逻辑空间或求解空间的问题。复杂问题经抽象化处理变为相对比较简单的问题。经若干步抽象(精化)处理,最后到求解域中只是比较简单的编程问题。 3.2 结构化程序设计(SP) 北京大学王选院士 没有GOTO语句 一个入口一个出口 自顶向下、逐步求精的分解 主程序员组 清华大学潭浩强教授 自顶向下、逐步求精 程序结构按功能划分为模块化 模块功能单一、简单 模块由三种基本程序结构组成 程序由函数、子程序来实现 3.2 程序的三种基本结构 (1)顺序结构 在顺序结构程序中,各语句(或命令)是按照位置的先后次序,顺序执行的,且每个语句都会被执行到。 顺序程序段中的所有语句(包括说明语句),一律与本顺序程序段的首行左对齐。 3.3 C语句综述 C语句:以“;”作分隔符,编译后产生机器指令. C语句分类 函数调用语句;由一个函数调用加分号构成。 表达式语句:表达式加分号构成。 空语句: ; 复合语句:用 {…}括起来的一组语句 一般形式: { [数据说明部分;] 执行语句部分; } 程序控制语句(9种): 3.4 赋值运算符和赋值表达式 赋值运算符 “=”: 格式: 变量=表达式;过程:1、2、3。 复合赋值运算符: +=、- =、*=、/=、%=等10个。 格式: V op = e 等价于: V = V op e 例如: a += 5, 等价于 a = a + 5 x*=y+8等价于 x=x*(y+8) 例: 自增与自减运算
文档评论(0)