版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、全国计算机等级考试二级教程-C语言程序设计,张松E-mail:,选择蚁铭成就梦想-毛泽东,史蒂夫乔布斯(1955-2011),发明家、企业家、美国苹果公司联合创办人、前行政总裁。1976年乔布斯和朋友成立苹果电脑公司,他陪伴了苹果公司数十年的起落与复兴,先后领导和推出了麦金塔计算机、iMac、iPod、iPhone等风靡全球亿万人的电子产品,深刻地改变了现代通讯、娱乐乃至生活的方式。2011年10月5日他因病逝世,享年56岁。乔布斯是改变世界的天才,他凭敏锐的触觉和过人的智慧,勇于变革,不断创新,引领全球资讯科技和电子产品的潮流,把电脑和电子产品变得简约化、平民化,让曾经是昂贵稀罕的电子产品变
2、为现代人生活的一部分。,丹尼斯里奇,C语言之父,UNIX之父。曾担任朗讯科技公司贝尔实验室下属的计算机科学研究中心系统软件研究部的主任一职。1978年与布莱恩科尔尼干(BrianW.Kernighan)一起出版了名著C程序设计语言(TheCProgrammingLanguage),现在此书已翻译成多种语言,成为C语言方面最权威的教材之一。2011年10月9日,丹尼斯-里奇去世,享年70岁。,DennisRitchie,语言出现的历史背景,B语言1970年,美国贝尔实验室的KenThompson以BCPL语言为基础,设计出很简单且很接近硬件的B语言,并且他用B语言写了第一个UNIX操作系统,在P
3、DP7上实现。优点:精练,接近硬件,缺点:过于简单,数据无类型。,1967年,剑桥大学的MartinRichards对CPL语言进行了简化,于是产生了BCPL(BasicCombinedPogrammingLanguage)语言。,在1972年,美国贝尔实验室的D.M.Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。,C语言的祖先是BCPL语言。,语言的特点,(1)语言简洁、紧凑,使用方便、灵活。32个关键字、9种控制语句,程序形式自由(2)运算符丰富。34种运算符(3)数据类型丰富,具有现代语言的各种数据结构。(4)具有结构
4、化的控制语句,是完全模块化和结构化的语言。(5)语法限制不太严格,程序设计自由度大。(6)允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可直接对硬件进行操作。兼有高级和低级语言的特点。(7)目标代码质量高,程序执行效率高。只比汇编程序生成的目标代码效率低10-20%。(8)程序可移植性好(与汇编语言比)。基本上不做修改就能用于各种型号的计算机和各种操作系统。,第一章程序设计基本概念,1.1程序和程序设计1.1.1C程序将需要计算机做的工作写成一定形式的指令,并把它们存储在计算机内部的存储器中,当我们给出命令之后,它就按指令顺序自动进行操作。我们把这种可以连续执行的指令集合叫做
5、“程序”。所以说,程序就是人与机器“沟通”的语言,也就是我们常说的“程序设计语言”。程序设计语言的种类很多,用什么样的语言写的程序指令就叫什么程序,比如说用VB、C+、Java等语言写的程序就相应叫VB程序、C+程序、Java程序,当然用C语言写的程序就叫C程序。,计算机本身是不能直接识别由上面所说的高级语言编写的程序的,它只能接受和处理由0和1的代码构成的二进制指令或数据。这种形式的指令是面向机器的,因此叫它“机器语言”。那么由高级语言写出来的程序相对于机器执行的机器语言来说叫“源程序”,把由二进制代码表示的程序称为“目标程序”。因此,在编写完源程序以后,若想在机器上执行该程序,就要有一种被
6、叫做“编译程序”的软件把源程序翻译成“目标程序”。每种高级语言都有与它对应的编译程序。如C语言的编译程序TurboC.,C语言源程序,C语言编译程序,二进制机器指令,C源程序经过C编译程序编译之后生成一个后缀为.OBJ的二进制文件(称为目标文件),然后由自然保护区为“连接程序”(Link)的软件,把.OBJ文件与C语言提供的各种库函数连接起来生成一个后缀为.EXE的可执行文件。可通过点击或者输入该文件的名字就可以执行这个文件了。,1.1.2程序设计简单程序设计一般包含以下几个部分:1.确定数据结构。2.确定算法。3.编码。4.在计算机上调试程序。5.整理并写出文档资料。,1.2算法学习计算机程
7、序设计的目的就是在用语言作为工具,设计出可供计算机运行的程序。那么,如何对一个已知的问题进行有效的求解呢?怎样才能编写出程序呢?一般来说,除了待定合理的数据结构外,关键的一步是设计算法,有了一个好的算法,就可以用任何一种计算机高级语言把算法转换为程序(编写程序)。,算法-为解决某个特定的问题而采取的确定且有限的步骤。,算法的五个特性:1.有穷性;2.确定性;3.可行性;4.有0个或多个输入;5.有1个或多个输出;算法的描述方法:伪代码和流程图。,流程图基本图形,1.3结构化程序设计和模块化结构,1.3.1结构化程序结构化程序由三种基本结构组成:1.顺序结构2.选择结构3.循环结构,顺序结构,选
8、择结构,二分支选择结构,选择结构,多分支选择结构,循环结构,当型循环结构,直到型循环结构,注:A,B,A1.An可以是一个简单语句,也可以是一个基本结构,已经证明,由三种基本结构所络组成的算法可以解决任何复杂的问题。由三种基本结构所构成的算法称为结构化算法;由三种基本结构所构成的程序称为结构化程序。,例1.1先后输入若干个整数,要求打印出其中最大的数,当输入的数小于0时结束。用N-S流程图表示算法。,解题思路:先输入一个数,在没有其他数参加比较之前,它显然是当前最大的数,把它放到变量max中,让max始终存放当前已比较过的数中上最大值。然后输入第二个数,并与max比较,如果第二个数大于max,
9、则用第二个数替换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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年靖宇县事业单位公开招聘高层次和急需紧缺人才笔试备考试题及答案详解
- 新华三集团2027届实习生招聘笔试参考题库及答案详解
- 2026年南郑县碑坝区医院医护人员招聘笔试备考题库及答案解析
- 2026年榆林市红山医院医护人员招聘笔试备考题库及答案解析
- 2026年苏州市相城区东桥镇卫生院康太诊所医护人员招聘笔试备考题库及答案解析
- 2025年盘锦市馥安医院医护人员招聘笔试试题及答案详解
- 2026河南三门峡义马市“企业人才服务团”引进笔试备考试题及答案详解
- 2026年衡阳市钢管厂职工医院医护人员招聘笔试备考题库及答案解析
- 2025年金湖县金北镇卫生院医护人员招聘笔试试题及答案详解
- 2026库尔勒泰农农业发展有限公司及子公司市场化公开选聘(65人)笔试备考题库及答案详解
- 2026年基层法律工作者试题库(附答案)
- 2026年教师职业能力测评题库及答案
- 2026江苏苏州工业园区综合执法系统招聘工作人员20人考试参考试题及答案解析
- 2025年福建省福州市八年级地理生物会考真题试卷(含答案)
- 航空油料化验员职业能力考核复习题库(附答案)
- 2026江苏连云港市东海县事业单位统一招聘15人笔试参考题库及答案解析
- 油品储运调和操作工(技师)职业技能鉴定考试题及答案
- 环保行业财务分析特点报告
- 半导体厂务项目工程管理 课件 项目1 任务1.1半导体厂务项目工程管理概述
- 2025重庆市消防救援总队机关及直属单位政府专职消防员招录113人(公共基础知识)综合能力测试题附答案解析
- 四川省成都市2026届高二上期期末统一调研考试生物答案
评论
0/150
提交评论