计算机二级C语言 补充内容.ppt_第1页
计算机二级C语言 补充内容.ppt_第2页
计算机二级C语言 补充内容.ppt_第3页
计算机二级C语言 补充内容.ppt_第4页
计算机二级C语言 补充内容.ppt_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、补充的内容,编程环境 程序调试 函数库与库函数 代码书写规范与风格 几点补充内容: 结构化程序设计的概念 算法 流程图: 传统流程图 N-S图 C语句 例子,代码书写规范与风格,追求 清晰、整洁、美观、一目了然 容易阅读,容易测试 命名规则: 程序版式:对齐(Alignment)与缩进(Indent) 程序注释:行注释、块注释,代码书写规范与风格,在哪些地方写注释? 在重要的文件首部 文件名 + 功能说明 + 作者 + 版本 + 版权声明 + 日期 在用户自定义函数前 对函数接口进行说明 函数功能 + 入口参数 +出口参数 + 返回值 (包括出错处理) 在一些重要的语句块上方 对代码的功能、原

2、理进行解释说明 在一些重要的语句行右方 定义一些非通用的变量 函数调用 较长的、多重嵌套的语句块结束处 在修改的代码行旁边加注释,代码书写规范与风格,函数的注释风格 C风格 /*/ /*功能描述: 本函数用于实现xxx功能,目的是: */ /*入口参数: 参数xx,表示 */ /*出口参数: 参数xx,表示 */ /*返回值: 返回xx值,当返回xx值时,表示 */ /*/ /* 功能描述: 本函数用于实现xxx功能,目的是: 入口参数: 参数xx,表示 出口参数: 参数xx,表示 返回值: 返回xx值,当返回xx值时,表示 */ C+风格 / /功能描述: 本函数用于实现xxx功能,目的是:

3、 /入口参数: 参数xx,表示 /出口参数: 参数xx,表示 /返回值: 返回xx值,当返回xx值时,表示 /,结构化程序设计,一个比较流行的定义是: 结构化程序设计(Structured Programming)采用“自顶向下、逐步求精”(Top-down,Stepwise refinement)和模块化的方法进行程序设计,限制和避免使用goto语句。 已经证明,只用顺序、选择、循环三种基本的控制结构就能实现任何单入口、单出口的程序。 只有一个入口;只有一个出口。 无死语句,无死循环。,1966年,C.Bohm和G.Jacopini首先证明了:任何程序均可由三种基本控制结构组合而成。它们是:

4、 顺序结构:按语句顺序依次执行。 选择结构:根据对给定条件的判断结果决定执行两路或多路中的一路。 循环结构:满足循环条件则重复执行一组语句。 限制使用goto语句。,结构化程序设计,算法的概念,对面向过程的语言(如C) 程序 = 数据结构 + 算法 对面向对象的语言(如C+) 程序 = 对象 + 消息 算法: 为解决一个具体问题而采取的确定的有限的操作步骤,仅指计算机能执行的算法。,算法的特性,有穷性 在合理的时间内完成 确定性,无歧义 如果x0,则输出Yes;如果x0,则输出No; 有效性 能有效执行(负数开平方就不能有效执行) 没有输入或有多个输入 有一个或多个输出,算法的分类,数值运算算

5、法: 解决求数值解问题。 非数值运算算法: 需要用分析推理、逻辑推理才能解决的问题; 例如人工智能中的许多问题,查找、分类等。,算法的表示方法,自然语言表示; 传统的流程图表示; 在1966年,Bohra 与 Jacopini 提出。 N-S结构化流程图表示; 1973年,美国学者INassi 和 BShneiderman 提出。 伪代码表示。,算法的表示方法,传统的流程图表示; 在1966年,Bohra 与 Jacopini 提出。,起止框,输入框,判断框,处理框,流程线,连接点,注释框,B,A,NS图,传统流程图,流程图:顺序结构,B,A,B,N,如果 成绩60 那么 通知补考 否则 告知

6、你考试成绩,A,Y,条件 P,流程图:分支结构(选择结构),当型循环,流程图:循环结构,A,当P成立,直到型循环,流程图:循环结构,A,直到P为假,A,条 件P,A,当型循环,直到型循环,真,假,假,条 件P,假,真,流程图:循环结构,流程图:传统流程图,6!(6的阶乘)算法可以用流程图表示如下:,开始,x = 1,y = 2,x*y= y,x + 1= x,A,A,x 6,Y,B,B,结束,传统流程图,打印 y,流程图:图,6!(6的阶乘)算法可用 N-S 图表示如下:,1 =x,2 =y,x * y =y,x + 1 =x,直到 x6,打印 y,初始化部分,循环部分,输出部分,例子:,【例

7、3.27】求最大公约数GCD。 “辗转相除法”(伪代码): 输入A、B两个数, 若A=B,则A或B即为GCD。 若AB,则将A与B交换, 将AB赋给A,直到A=B为止。 例:求4,12的GCD ,其算法: 1) 412; 2) 412; 交换:A=12,B=4 3) A=124=8 4) 8 4;继续判断 5) 84 6) A=84=4 7) A=B=4 终止,流程图,例子:,【例3.27】求最大公约数。 main ( ) int a,b,c; printf (Enter First number: ); scanf (%d, ,控制语句 if()else (条件语句) for() (循环语句) while() (循环语句) dowhile()(循环语句) continue (结束本次循环) switch (多分支选择语句) break (中止switch或循环语句) goto (转向语句) return (从函数返回语句),C语句,函数调用语句 printf(This is a c statement.); 表达式语句 i = i + 1 (不是语句) i = i + 1; (是语句) x + y; (是语句,但无实际意义) 空语句 ; 复合语句 z = x + y; t = z/1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论