




免费预览已结束,剩余15页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
c语言程序设计概述,第1章,本 章 内 容,算法与程序设计 c语言发展历史和特点 c语言程序的结构 c语言上机环境及操作步骤 用流程图表示算法 结构化程序设计简介,1.1 算法与程序设计,算法 算法的概念 计算机解决问题所依据的步骤称为计算机算法,简称算法。 【例1-1】计算1+2+3+100,可采取以下两种算法中的一种。 算法一。可以设两个变量(变量是指其值可以改变的量),一个 变量代表和(s),一个变量代表加数(i),用循环算法表示如下: 第一步:0s,1i。 第二步:s+is。 第三步:i+1i。 第四步:如果i100,转第二步;否则,转第五步。 第五步:输出结果s,结束。 算法二。 第一步:100101/2s。 第二步:输出s,结束。,1.1 算法与程序设计,【例1-2】判断一个大于等于3的正整数是不是素数。 所谓素数是指除了1和该数本身之外,不能被其他任何整数整除 的数。算法表示如下: 第一步:输入n的值。 第二步:i作除数,2i。 第三步:n除以i,得余数r。 第四步:如果r=0,表示n能被i整除,则打印n不是素数,转第七步;否则执行第五步。 第五步:i+1i。 第六步:如果in-1,返回第三步;否则打印n是素数,转第七步。 第七步:结束。 实际上,除数只需为2n/2或者2之间的整数即可。第六步的条件改变一下,程序执行时间会大大缩短。,1.1 算法与程序设计,算法的属性 (1)有穷性 有穷性是指一个算法的操作步骤必须是有限的和合理的,即在合理的范围之内结束算法。 (2)确定性 算法中每个操作步骤都应当是明确的,而不应是含糊的、模棱两可的。 (3)有零个或多个输入 执行算法时需要从外界获得必要信息的操作称为输入。输入的数据个数根据算法确定。 (4)有一个或多个输出 执行算法得到的结果就是算法的输出,没有输出的算法是没有意义的。 (5)有效性 算法中的每一个步骤都应当有效地执行,并得到确定的结果。,1.1 算法与程序设计,程序 用计算机语言描述的算法称为计算机程序,或简称程序。只 有用计算机语言描述的算法才能在计算机上执行。 【例1-3】输入任意20个整数,求出其中最大者,可采用以下算法: 第一步:输入一个整数赋给big。 第二步:1i。 第三步:如果i19,输入一个整数赋给x,转第四步;否则,转第六步。 第四步:如果x大于big,xbig,然后转第五步;否则,直接转第五步。 第五步:i+1i,转第三步。 第六步:输出结果big,结束。,1.1 算法与程序设计,针对上述算法,用c语言可描述为: main() int i,x,big; scanf(“%d“, ,1.1 算法与程序设计,程序设计语言 计算机语言是面向计算机的人造语言,是进行程序设计的工具,因此也称程序设计语言。 程序设计语言可以分为机器语言、汇编语言、高级语言。 机器语言:计算机硬件能直接执行。 汇编语言:也称符号语言,用汇编语言编写的程序称汇编语言程序。计算机硬件不能识别和直接运行汇编语言程序,必须由“汇编程序”将其翻译成机器语言程序后才能识别和运行。 高级语言:不能被计算机硬件直接识别和执行,必须把高级语言程序翻译成机器语言程序才能执行。,1.1 算法与程序设计,程序设计的一般过程 1建立数学模型 就客观世界中的一般问题,在程序设计之初,首先应将实际问题用数学语言描述出来,形成一个抽象的、具有一般性的数学问题,从而给出问题的抽象数学模型。 2算法描述 数学模型建立以后,需要采用一定的算法进行描述,也可能比较几种算法的优劣,选择较理想的算法。 3编写程序 使用计算机系统提供的某种程序设计语言,将已设计好的算法表达出来,使得用其他形式表达的算法转变为由程序设计语言表达的算法,这个过程称为程序编制(或编码)。 4程序测试 程序编写完成后必须经过科学的、严格的测试,才能最大限度地保证程序的正确性。,1.2 c语言发展历史和特点,c语言的发展过程 1972-1973年间,美国贝尔实验室发明了c语言。c语言是在一种称为b语言的基础上发展起来的,并首先在配备unix操作系统的dec pdp-11计算机上实现。 1978年以后,随着微型机的普及,出现了一大批c语言系统。 1983年,美国国家标准化协会(ansi)公布了一个标准,称为ansi c。 1987年,ansi又公布了一个新的标准,称为87 ansi c。 1990年,国际标准化组织iso接受87 ansi c为iso c的标准。 目前语言编译系统有多种版本,在微机上常用的有microsoft c、turbo c、quick c、borland c+ 5.0、c-free3.5和visual c+ 6.0。 1994年ansi又制定了ansi c+ 标准草案。c+在ansi c的基础上,扩充了类的部分,因此ansi c是c+的子集。就是说,按照ansi c标准编写的程序可以运行在c+的语言环境中。,1.2 c语言发展历史和特点,c语言的主要特点 兼有低级语言的功能 结构化的程序设计语言 语言比较简洁紧凑 运算符丰富 数据结构丰富 语法限制不太严格,书写格式比较自由 目标代码质量高,程序执行效率高,1.3 c语言程序的结构,c语言程序的一般形式,任何一个c程序都是由一个或多个函数构成的; 一个c程序中至少必须存在一个主函数main()。它是程序运行开始时被调用的一个函数; c语言程序的一般形式如右图所示,其中f1至fn代表用户定义的函数。,1.3 c语言程序的结构,c程序中的主要成分 1.预处理命令 预处理命令是程序中那些以符号 # 开头的命令。c语言中常用的预处理命令有三类:文件包含、宏定义和条件编译。 2.函数 函数通常用于描述相对独立的功能,每个函数都具有严格定义的格式,可以有参数和返回值。一个程序中除了一个必须取名为main的主函数,其余函数可以取任何有意义的名字。 3.输入与输出 用户通过输入为程序提供初始数据,程序通过输出产生运行结果。 4.语句 (由单词按照一定的语法规则构成) 程序中每个语句都必须以分号“;”结束,分号是语句的一部分。 允许一行内写几条语句,也允许一条语句写在几行上。 5.注释 c语言的注释格式为:/*/。,1.4 c语言上机环境及操作步骤,用高级语言编写源程序要变成可执行代码,需要四个步骤: 上机环境介绍turbo c 2.0集成环境,1.5 用流程图表示算法,流程图用一组框图符号表示各种操作,也称框图。 美国国家标准化协会ansi(american national standard institute)规定了一些常用流程图符号:,1.5 用流程图表示算法,【例1-5】计算1+2+3+4+100。,1.5 用流程图表示算法,【例1-6】判断一个大于等于3的数是不是素数。,1.6 结构化程序设计简介,结构化程序 算法中有三种基本结构,即顺序结构、选择结构和循环结构。每种基本结构都只有一个入口和一个出口。如果一个算法由这三种基本结构所组成,则称其为结构化算法。用高级语言表示的结构化算法称为结构化程序。 一个结构化程序应符合以下标准: 程序仅由顺序结构、选择结构和循环结构等三种基本结构组成,基本结构可以嵌套。 每种基本结构都只有一个入口和一个出口,即一端进,一端出。 程序中没有死循环(不能结束的循环叫死循环)和死语句(程序中永远执行不到的语句叫死语句)。,1.6 结构化程序设计简介,结构化程序设计方法遵循的原则 1自顶向下,逐步求精 抓住整个问题的本质特性,采用自顶向下逐层分解的方法,对问题进行抽象,划分出不同的模块,形成不同的层次概念。把一个较大的复杂问题分解成若干相对独立而又简单的小问题,只要解决了这些小问题,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45905.4-2025电力现货市场运营第4部分:负荷预测
- GB/T 14546-2025核电厂直流电力系统设计实施方法
- 广西邮政考试题库及答案
- 物业公司关键绩效指标(KPI)考核体系及实施方案
- 森林培育现场讲解课件
- 2025梯子安全知识专项培训
- 2025年法律行业招聘面试技巧大揭秘模拟题及参考答案详解
- 2025年室内设计师中级专业技能实战预测题集锦
- 2025年《监察法》知识考试题库及参考答案
- 2025年农村基层安全管理人才队伍建设与招聘考试现状分析
- 港口和码头基本知识培训课件
- 美容外科安全应急预案范文(3篇)
- 水利工程拦水坝建设方案实例
- 新学期+心动力+课件-2025-2026学年高二上学期开学第一课主题班会
- 6G多维度切片QoS保障-洞察及研究
- 老年人能力评估师考试题能力模拟题及答案
- 2025-2026学年外研版(三起)(2024)小学英语四年级上册教学计划及进度表
- 2025年安徽国控集团所属企业招聘7人笔试备考题库及答案解析
- 1.1认识社会生活(课件)- 2025-2026学年统编版道德与法治八年级上册
- 仓库盘盈盘亏处理方案(3篇)
- 2025年书法级考试题及答案
评论
0/150
提交评论