C语言概述 (自动保存的).docVIP

  • 9
  • 0
  • 约5.73万字
  • 约 70页
  • 2016-03-31 发布于湖北
  • 举报
C语言概述 (自动保存的).doc

C语言汇编 C语言概述 软件=程序+各种文档 程序:一系列有序的指令集合。 程序=算法+数据结构+语种+…… 算法:解决问题的思路。 算法具有五大特性:有效性(可行性)、确定性、有穷性、零个或多个输入、一个或多个输出。 1、程序的灵魂——算法 如同写命题作文前,要“先审题、再构思、最后成文”一样,编制一个应用程序,也应该“先弄清楚问题所在,再想好解决问题的办法(即操作方法、步骤),最后用某一计算机语言编写代码”。写作文的难点是“构思”,编程序的难点在于“想到解决问题的办法”,而“解决问题的办法”就是“算法”的通俗说法。 广义而言,算法就是解决问题或处理事情的方法和步骤。 狭义而言,算法专指用计算机解决某一问题的方法和操作步骤。 可见,“算法”是程序的核心。著名计算机科学家沃思(Nikiklaus Wirth)就提出过一个公式:程序=算法+数据结构。所谓“数据结构”通俗地说就是“数据间的组织关系”, “数据结构”的重要性,到“数组”那一章会体会得多一点。 计算机算法可以分为两大类:一类是数值计算算法,主要是解决一般数学解析方法难以处理的一些数学问题,如求解超越方程的根、求定积分、解微分方程等;另一类是非数值计算算法,如对非数值信息的排序、查找等。 2、算法的三种基本结构 1966年,Bohra和Jacopini提出了用以下三种基本结构作为表示一个良好算法的基本单元。 (1)顺序结构。 (2)选择结构(又称分支结构)。选择结构有三种形式:单分支、双分支和多分支。 (3)循环结构(又称重复结构)。循环结构有两种常见形式:当型循环,“先判断、后执行”;直到型循环,“先执行、后判断”。 理论上已经证明,无论多么复杂的问题,其算法都可表示为这三种基本结构的组合。依照结构化的算法编写的程序或程序单元(如过程),其结构清晰、易于理解、易于验证其正确性,也易于查错和排错。这就是所谓的“结构化程序设计方法”。 3、描述算法的方法 (1)自然语言 (2)伪代码 (3)流程图或N-S图 算法是程序的核心,在初学者对C还不熟悉的前提下,如何给予算法提示呢?即使日后对C非常熟悉了,遇到较难的算法,也需要事先描述出算法后,再编写代码。描述算法的常用方法有:自然语言、传统流程图、N-S结构化流程图、伪代码等。其中,最常用又简洁明了的是传统流程图和N-S结构化流程图。 (1)传统流程图 用以上图形符号描述的三种基本结构: (a)顺序结构 (b)双分支结构 (c)单分支结构 由流程图可以发现,三种标准基本结构的共同特点是: 1.只有单一的入口和单一的出口; ② 结构中的每个部分都有执行到的可能; ③ 结构内不存在永不终止的死循环。 由流程图还可以发现,图形清晰明了,容易理解,适合初学者使用;但图中箭头多,算法复杂时,图形占的篇幅也大…… (2)N-S结构化流程图 1973年美国学者Nassi和Shneiderman提出了一种新的流程图方式。这种形式将全部算法写在一个矩形框内,大框内包含从属的小框。下图给出了三种基本结构的N-S图。完全去掉了传统流程图中的箭头。 顺序结构 双分支选择结构 当型循环结构 直到型循环结构 三种基本结构的N-S图 一、C语言的特点(面向过程) 二、程序设计思想 “自上而下、逐步细化”的模块化 ,C语言适合结构化程序设计的语种, 有三种结构:顺序、选择、循环(选择即分支、循环即重复) 三、C语言字符集 1. 52个英文字母(严格区分大小写) 2. 符号: ① ; ② , ③ = 赋值号 ④ +和-等 ⑤ 空格 ⑥ ! ⑦ ⑧ % ⑨ *和/ ⑩ | …… 3. 标识符 (1)关键字 (2)标准标识符(系统函数名):比如printf (3)用户自定义标识符:只能含有字母、下划线、数字字符,且第一个字符必须是字母或下划线。不能与关键字同名! 【建议】自己定义标识符时,尽量注意:“望文生义”、“简洁明了”、“符合习惯”。 4. 语句(总是以分号结束,复合语句除外) (1)说明语句或定义语句 (2)空语句(只有一个;) (3)表达式语句(最重要的是赋值语句) (4)函数调用语句(比如printf语句) (5)控制语句 (6)用{}将若干语句括起来,就构成一个复合语句 四、C源程序的构成 1个C语言源程序(.c)=1个主函数[ +若干子函数] main( ) {定义说明部分 执行语句部分} 数据类型、运算符和表达式 一、数据类型 对于基本数据类型量,按其取值是否可改变又分为常量和变量两种。在程序执行过程中,其值不发生改变的量称为常量,取值可变的量称为变量。 二、常量(书面常量、符号常量) 1、整型常量 例如: 5、32767、-12(普通整数,占2B) 0L、6000

文档评论(0)

1亿VIP精品文档

相关文档