




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机等级考试 二级教程 -C语言程序设计 张张 松松 E E-mail:-mail: 选择蚁铭 成就梦想 -毛泽东 史蒂夫乔布斯(1955-2011),发明家、企业家、美国苹果公司联合创办人 、前行政总裁。1976年乔布斯和朋友成立苹果电脑公司,他陪伴了苹果公司 数十年的起落与复兴,先后领导和推出了麦金塔计算机、iMac、iPod、 iPhone等风靡全球亿万人的电子产品,深刻地改变了现代通讯、娱乐乃至生 活的方式。2011年10月5日他因病逝世,享年56岁。乔布斯是改变世界的天才 ,他凭敏锐的触觉和过人的智慧,勇于变革,不断创新,引领全球资讯科技 和电子产品的潮流,把电脑和电子产品变得简约化、平民化,让曾经是昂贵 稀罕的电子产品变为现代人生活的一部分。 丹尼斯里奇, C语言之父,UNIX之父。曾担任朗讯科技公司贝尔实验室 下属 的计算机科学研究中心系统软件研究部的主任一职。1978年与布莱恩科尔尼 干(Brian W. Kernighan)一起出版了名著C程序设计语言(The C Programming Language),现在此书已翻译成多种语言,成为C语言方面最权 威的教材之一。2011年10月9日,丹尼斯-里奇去世,享年70岁。 Dennis Ritchie 语言出现的历史背景 B 语言 1970年,美国贝尔实验室的 Ken Thompson以 BCPL语言为基础,设计出很简单且很接近硬件的B语言, 并且他用B语言写了第一个UNIX操作系统,在PDP 7上实现 。优点:精练,接近硬件,缺点:过于简单,数据无类型。 1967年,剑桥大学的 Martin Richards 对CPL语言进行了简 化,于是产生了BCPL(Basic Combined Pogramming Language)语言。 在1972年,美国贝尔实验室的 D.M.Ritchie 在B语言的基础 上最终设计出了一种新的语言,他取了BCPL的第二个字母 作为这种语言的名字,这就是C语言。 C语言的祖先是BCPL语言。 语言的特点 (1)语言简洁、紧凑,使用方便、灵活。 32个关键字、9种控制 语句,程序形式自由 (2)运算符丰富。34种运算符 (3)数据类型丰富,具有现代语言的各种数据结构。 (4)具有结构化的控制语句 ,是完全模块化和结构化的语言。 (5)语法限制不太严格,程序设计自由度大。 (6)允许直接访问物理地址,能进行位操作,能实现汇编语言的 大部分功能,可直接对硬件进行操作。兼有高级和低级语言的特 点 。 (7)目标代码质量高,程序执行效率高。只比汇编程序生成的目 标代码效率低10-20%。 (8)程序可移植性好(与汇编语言比)。基本上不做修改就能用 于各种型号的计算机和各种操作系统。 第一章 程序设计基本概念 1.1 程序和程序设计 1.1.1 C程序 将需要计算机做的工作写成一定形式的指令, 并把它们存储在计算机内部的存储器中,当我们给 出命令之后,它就按指令顺序自动进行操作。我们 把这种可以连续执行的指令集合叫做“程序”。所以 说,程序就是人与机器“沟通”的语言,也就是我们 常说的“程序设计语言”。 程序设计语言的种类很多,用什么样的语言写 的程序指令就叫什么程序,比如说用VB、C+、 Java等语言写的程序就相应叫VB程序、C+程序 、Java程序,当然用C语言写的程序就叫C程序。 计算机本身是不能直接识别由上面所说的高级语言 编写的程序的,它只能接受和处理由0和1的代码构成的 二进制指令或数据。这种形式的指令是面向机器的,因 此叫它“机器语言”。 那么由高级语言写出来的程序相对于机器执行的机 器语言来说叫“源程序”,把由二进制代码表示的程序称 为“目标程序”。因此,在编写完源程序以后,若想在机 器上执行该程序,就要有一种被叫做“编译程序”的软件 把源程序翻译成“目标程序”。每种高级语言都有与它对 应的编译程序。如C语言的编译程序Turbo C. C语言 源程序 C语言 编译程序 二进制 机器指令 C源程序经过C编译程序编译之后生成一个后缀为.OBJ的 二进制文件(称为目标文件),然后由自然保护区为“连 接程序”(Link)的软件,把.OBJ文件与C语言提供的各 种库函数连接起来生成一个后缀为.EXE的可执行文件。可 通过点击或者输入该文件的名字就可以执行这个文件了。 1.1.2 程序设计 简单程序设计一般包含以下几个部分: 1.确定数据结构。 2.确定算法。 3.编码。 4.在计算机上调试程序。 5.整理并写出文档资料。 1.2 算法 学习计算机程序设计的目的就是在用语言作为工具 ,设计出可供计算机运行的程序。 那么,如何对一个已知的问题进行有效的求解呢? 怎样才能编写出程序呢? 一般来说,除了待定合理的数据结构外,关键的一步 是设计算法,有了一个好的算法,就可以用任何一种计算 机高级语言把算法转换为程序(编写程序)。 算法-为解决某个特定的问题而采取的确定且有限 的步骤。 算法的五个特性: 1.有穷性; 2.确定性; 3.可行性; 4.有0个或多个输入; 5.有1个或多个输出; 算法的描述方法:伪代码和流程图。 流程图基本图形 符 号作 用符 号作 用 起止框输入/输出 框 处理框流程线 判断框( 2010年考点) 连接点 1.3 结构化程序设计和模块化结构 1.3.1 结构化程序 结构化程序由三种基本结构组成: 1. 顺序结构 2. 选择结构 3. 循环结构 顺序结构 A B A B 流程图N-S图 选择结构 P AB 真假 P BA 真假 l二分支选择结构 选择结构 l多分支选择结构 k A1A2AiAn k=k2 k=k1 k=kn k=ki 循环结构 l当型循环结构 l直到型循环结构 P A 假 真 当P为真 A A P 真 假 A 直到P为真 注:A,B,A1.An可以是一个简单语句,也可以是一个基本结构 已经证明,由三种基本结构所络组成的算法 可以解决任何复杂的问题。由三种基本结构所构 成的算法称为结构化算法;由三种基本结构所构 成的程序称为结构化程序。 例1.1 先后输入若干个整数,要求打印出其中最大的 数,当输入的数小于0时结束。用N-S流程图表示算法。 解题思路: 先输入一个数,在没有其他数参加比较之前,它显然是当前最大的 数,把它放到变量max中,让max始终存放当前已比较过的数中上最大值 。然后输入第二个数,并与max比较,如果第二个数大于max,则用第二 个数替换max中原来的值;如果第二个数小于max,则max中原来的值保 持不变。如此循环下去,直到输入的数小于0时程序结束。最后max中的 值就是所有输入数中的最大值。 根据上面的思路,画出N-S流程图。变量x用来控制循环的次数,当 x0时,执行循环体;在循环体内进行两个数的比较和和输入新的x值。 读入一个数给x max=x 当x0时 输出max xmax max=x 是 否 读入一个新数给x 例1.1程序的N-S流程图 1.3.2 模块化结构 当计算机在处理比较复杂的任务时,所编写的程序 经常会很长,而且通常情况下是由多人来完成的。这时 就需要要处理的复杂问题分解成若干个子问题,如果这 些子问题仍然很大,可以再划分更小的子问题,直到划 分的子问题比较容
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省大关县2025年上半年事业单位公开遴选试题含答案分析
- 河北省巨鹿县2025年上半年公开招聘村务工作者试题含答案分析
- 2025版汽车泵租赁及售后服务合同
- 2025版体育赛事场地设施维护保养合同
- 2025版三亚海绵城市非开挖顶管排水合同
- 2025版滩涂地现代农业种植土地承包合同
- 2025年房地产项目公司股权转让与土地开发权转让协议
- 2025版汽车金融租赁业务合作协议
- 河北省泊头市2025年上半年公开招聘村务工作者试题含答案分析
- 海南省东方市2025年上半年事业单位公开遴选试题含答案分析
- 2025年体育与健康教材教法考试模拟试卷及答案
- 2025年江西省高职单招文化统一考试真题及答案(网络版)
- 《医疗机构重大事故隐患判定清单(试行)》知识培训
- 劳务临时用工合同
- 测绘服务投标方案(技术标)
- GB/T 4213-2024气动控制阀
- 智慧水务系统方案
- 航空运动基地建设规范
- 矿产资源勘查与开采合同
- 冠状动脉造影术后护理课件
- 《压铸安全知识》课件
评论
0/150
提交评论