已阅读5页,还剩51页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章程序设计基础 第1章C语言程序设计基础 1 1人的思维形式 1 2程序设计基础 1 3C语言的发展与特点 1 4C程序开发及运行环境 本章内容 1 1人的思维形式 思维是人脑的功能 思维的进行必须借助语言 思维的结果也必须通过语言表现才能为人们所感受 通常所说的语言为人类自然语言 广义的语言还包括人工语言 人工语言就是人工定义的一套符号系统 人们为了能使计算机接受人类的思想 制定了各种符号和语法规则 这种语言称为计算机语言 1 1人的思维形式 当人们想通过计算机完成人的某些功能时 必须事先把人完成该功能的思维过程用计算机语言表达出来 输入计算机 就是程序 当人们向计算机发出执行的指令时 计算机就会快速 高效的完成 本学期学习的C语言就是计算机语言中的一种 它同样具有计算机语言的特征 有自己的基本符号 数据类型 运算符和语法规则 1 2程序设计基础 1 2 2面向过程与面向对象 1 2 3数据结构概述 1 2 4算法 本节内容 1 2 1程序设计的基本概念 1 2 1程序设计的基本概念 1 2 1 1程序程序 Program 就是一系列操作步骤的集合 计算机程序 Computerprogram 就是人们事先规定的 让计算机完成某项工作的若干操作步骤的集合 每一个步骤都是用计算机能够理解的指令来描述的 指令 Instruction 是计算机能够理解的操作命令 指令告诉计算机 做什么 和 怎么做 1 2 1程序设计的基本概念 1 2 1 2程序设计程序设计 Programming 是给出解决特定问题程序的过程 是软件构造活动中的重要组成部分1 分析阶段2 设计阶段3 编码阶段4 测试阶段5 调试和运行阶段 1 2 1程序设计的基本概念 1 2 1 3程序设计语言程序设计语言 ProgrammingLanguage 是一组用来定义计算机程序的语法规则 1 2 1程序设计的基本概念 00100011111011010110000101110110 机器语言程序 MOVAX 300HADDBX AXMOV 2100H BXHLT 汇编语言源程序 main inta 300 b 18 c c a b printf a b d n c 高级语言C语言源程序 源程序需要翻译 1 2 2面向过程与面向对象 面向过程 是一种以事件为中心的编程思想 面向过程是分析出解决问题所需要的步骤 然后用函数把这些步骤一步一步实现 使用的时候依次调用这些函数 面向对象 ObjectOriented 简称OOP 是一种以事物为中心的编程思想 面向对象是把构成问题事务分解成各个对象 建立对象的目的不是为了完成一个步骤 而是为了描叙某个事物在整个解决问题的步骤中的行为 1 2 2面向过程与面向对象 在进行面向过程的程序开发时 需要程序的编写者要十分清楚这个程序有那些功能 或者说有哪些函数 函数之间是怎样进行调用的 每一步的函数返回值是什么 需要程序开发者严格控制每一个步骤 对每个步骤做到心中有数 而面向对象程序设计方法以数据为中心来描述系统 数据相对于功能而言具有较强的稳定性 因此更易于维护 1 2 3数据结构概述 数据结构数据结构是带有结构的数据元素的集合 或者说 数据结构是指互相之间存在着一种或多种关系的数据元素的集合 课时所限本课程不对数据结构展开讨论 1 2 4算法 算法是为解决某一特定问题而采取的具体的步骤的序列 计算机算法分为两类 数值运算算法非数值运算算法 1 2 4算法 1 2 4 1算法的特征有穷性 在有限的操作步骤内完成确定性 每个步骤确定 步骤的结果确定输入 算法有零个或多个输入输出 算法执行完毕 必须有一个或若干个输出结果可行性 算法的每一步都是能够实现的 即是可操作的 1 2 4算法 1 4 1 2算法的组成要素 算法中对数据的运算和操作算法是按照要求从环境能够运行的所有操作中选择合适的操作所组成的一组指令序列算法的控制结构算法中各操作步骤之间的执行顺序包括顺序 选择 循环三种结构 1 2 4算法 1 2 4 3算法的描述方法1 用自然语言描述容易出现歧义 难以清晰地表达出分支 循环结构 2 用伪代码描述没有统一标准 不易相互交流 3 用流程图描述使用广泛 历史较长 结构不是最严谨 4 用N S图描述取消流程线 结构严谨 1 2 4算法 1 2 4算法 顺序结构先执行A 再执行B 两者是顺序执行关系 1 2 4算法 选择结构当P条件为真时 执行A 否则执行B 1 2 4算法 当型循环结构当P条件成立时 反复执行A 直到P为假 a b A 当P为真 1 2 4算法 直到型循环结构先执行A 再判断P 若P为真 再执行A 直到P为假为止 a b 1 2 4算法 已经证明 任何复杂的问题都可以三种基本算法结构来描述 顺序 选择 循环 因此用计算机语句描述的程序也包含三种基本结构程序的三种基本结构顺序结构程序 按照书写顺序依次执行语句选择结构程序 按照条件判断选择执行语句循环结构程序 通过条件控制循环执行语句 1 3C语言的发展与特点 1 1人的思维形式 1 3 2C语言的特点 1 3 3简单程序示例 1 3 4C程序的书写格式 本节内容 1 3 1C语言的发展状况 1 3 5main函数 1 3 1C语言的发展状况 语言是1971年由美国贝尔实验室的D M Ritchie设计发明的 1972年投入使用 1973年K Thompson和D M Ritchie用 语言重写UNIX操作系统获得巨大成功 1983年美国国家标准化协会 ANSI 为 语言制定了一套ANSI标准 1987年ANSI公布了87ANSI标准成为现行的 语言标准 语言已成为程序员使用最多的编程语言之一 无论是面向硬件编程 还是面向大型数据库编程 无论编写应用软件 还是编写操作系统 语言都是首选编程语言 1 3 1C语言的发展状况 1 3 1C语言的发展状况 图形处理影音编辑 操作系统办公软件 网络软件游戏软件 科学计算自动控制 1 3 2C语言的特点 1 语言简洁紧凑 使用灵活2 运算功能丰富3 数据类型丰富 具有现代语言的各种数据结构4 具有结构化的控制语句 以函数作为程序模块5 允许直接访问物理地址及位操作6 语法限制不太严格 程序设计自由度大7 生成目标代码质量高 执行效率高8 程序的可移植性好 1 3 3简单程序示例 输出Thisisacprogram 输完后换行 includevoidmain printf Thisisacprogram n 1 3 3简单程序示例 该程序只有一个名为main的主函数 函数体 花括号内的内容 只有一个语句 printf输出语句C程序的特点C程序由函数组成 每个程序都必须有一个 且只能有一个名为main的主函数 1 3 3简单程序示例 求两个整数之和 includevoidmain inta b sum 这是定义变量 a 123 b 456 sum a b printf Sumis d n sum 1 3 3简单程序示例 例1 3 从键盘输入两个整数 将最大值显示出来 includeintmax intx inty 求最大值函数 intz if x y z x elsez y return z 1 3 3简单程序示例 main inta b c 声明部分 定义变量 printf Pleaseinputtwointegers n scanf d d 1 3 3简单程序示例 C程序特点函数由函数首部和函数体构成 函数体由变量声明部分和执行部分组成 执行部分必须在声明部分后面 函数定义的一般格式为 函数类型函数名 形参类型1形参1 形参类型2形参2 声明部分执行部分 1 3 4C程序的书写格式 C程序的书写格式有以下特点 1 源程序是由函数构成的 其中必须有一个且只能有一个主函数 main函数 还可以有 到多个其它函数 程序由main函数的首句开始执行 由main函数的最后一句结束 函数中可调用其它函数 2 语言中用户可以自己定义函数 也可以使用 系统提供的库函数 如 printf函数和scanf函数 TurboC提供了300多个库函数 要调用 的库函数 必须在源程序首部加上相应的库文件包含 例子中的 include 1 3 4C程序的书写格式 3 语言函数内部不能定义函数 主函数main可以放在某一用户函数之前 也可以放在某一用户函数之后 但被调用的函数应在主调函数之前定义或说明 4 程序一般用小写字母书写 大 小写字母是有区别的 如area与Area代表不同的变量 5 程序书写格式自由 一行内可写多条语句 若一条语句较长 可分写在多行上 语句用分号 结尾 可以在 内写若干条语句 构成复合语句 1 3 4C程序的书写格式 6 语言的变量在使用之前必须先定义其数据类型 未经定义的变量不能使用 7 语言的函数由函数头与函数体两部分组成第一部分为函数头 函数说明部分 包括函数返回值类型 函数名 函数参数及参数的数据类型 第二部分为函数体部分 它是函数功能的实现部分 包括变量定义与执行语句 8 在程序中可以加一些注释语句 以便提高源程序的可读性 程序的注释部分包含在 和 之间 1 3 5main函数 main 是C程序中唯一可以直接运行的函数 其他函数都直接或间接由main 调用执行 C程序的执行开始于main 函数 一个结构良好的C程序也应结束于main 函数 对于一些较小的程序 用一个main 函数就够了 全部的处理语句都放在main 函数中 对于一些复杂问题 需要进行模块化设计 要将一个复杂问题分解成若干个相对简单的一些子问题 每个子问题由一个或多个函数来处理 main 函数负责总控 并调用相应的函数 1 3 5main函数 main 是一个特殊的函数 与其他函数一样 该函数也可以有返回值和参数表 本书第5章将对main 函数作更进一步说明 下面给出main 函数的最简单形式 main 主函数名 函数体起始符局部变量声明执行语句序列 函数体终止符 1 4C程序开发及运行环境 1 4 2VC 6 0集成开发环境 1 4 3使用VC 6 0开发C程序 本节内容 1 4 1开发C程序的步骤 1 4 1开发C程序的步骤 1 4 1 1几个基本概念 1 源文件源文件又叫源程序 是用来保存特定编程语言的代码的文件 源文件中的代码又叫源代码 源文件可以通过开发环境所提供的编辑器创建 也可以通过其他文件编辑器创建 例如 既可以利用VisualC 6 0集成环境也可以用Windows操作系统中的 记事本 创建和编辑C源程序 源程序通常以特定扩展名的文本文件形式保存在磁盘上 例如 C语言源程序文件的扩展名为 c 1 4 1开发C程序的步骤 2 目标文件目标文件又叫目标程序 是语言系统的编译程序将源程序翻译后生成的二进制代码文件 目标程序也是以文件形式保存在磁盘上 例如 C语言目标程序文件的扩展名为 obj 3 可执行文件可执行文件又叫可执行程序 是计算机能直接识别和执行的程序 它是将目标文件与所需要的库文件等信息连接后生成的程序 保存在磁盘上 可供用户多次执行 C语言可执行文件的扩展名为 exe 1 4 1开发C程序的步骤 4 编译程序编译程序是高级语言系统提供的一种翻译程序 其作用是将高级语言编写的源程序翻译成二进制代码程序 例如 C语言和FORTRAN语言为编译型语言 用它们编写的程序必须经过创建 编辑 编译 连接和运行等几个步骤才能完成 在对源程序编译过程中发现的错误称为编译错误 而程序在运行时出现的错误称为运行错误 5 连接程序连接程序是一种装配程序 其作用是将一个或若干个目标程序 obj 和指定的库文件 lib 连接起来 生成一个可执行程序 exe 1 4 1开发C程序的步骤 源文件 c cpp C编译程序VC 6 0 目标文件 obj 没有错误 目标文件 obj 目标文件 obj 有错误 反馈错误信息 修正 Linker连接 可执行文件 exe 1 4 2VC 6 0集成开发环境 VisualC 6 0环境开发C程序的过程如下 1 建立工程项目2 向工程项目中添加新文件3 编辑源代码4 编译和链接5 运行程序 1 4 2VC 6 0集成开发环境 1 4 3使用VC 6 0开发C程序 在编译C源文件之前 需要创建一个工程项目选择 文件 菜单项 出现下拉菜单 选择 新建 选项 则出现 新建 对话框 1 4 3使用VC 6 0开发C程序 选择 工程 标签 在左边的列表框中单击 Win32ConsoleApplication 选项 在右边的 工程 下方的编辑框中输入一个名字如first作为项目的名称单击 位置 下方的按钮 来选择项目存放的位置然后单击 确定 按钮 出现一个对话框在对话框中 单击 Anemptyproject 选项 然后单击 完成 按钮 一个空项目就创建好了 1 4 3使用VC 6 0开发C程序 1 4 3使用VC 6 0开发C程序 系统创建了一个名称为 first 的文件夹 文件夹中创建了3个文件 一个子目录 1 4 3使用VC 6 0开发C程序 后缀名为 dsp 的是项目文件 保存项目设置 它维护所有源代码文件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 斯里兰卡签约协议书
- 买房写赠予合同协议
- 新建围墙管护协议书
- 棉布加工协议书范本
- 交强险理赔合同范本
- 文广告框架合同范本
- 模具工作室合同范本
- 新建楼房销毁协议书
- 楼房贷款买卖协议书
- 施工死亡调解协议书
- 涉密人员岗前培训
- 2025年下半年中国中化集团限公司招聘易考易错模拟试题(共500题)试卷后附参考答案
- 课程思政示范课程汇报
- 安全生产事故报告与调查处理流程
- 儿科急性呼吸道感染预防措施
- 陶瓷原料制备工标准化技术规程
- 基于含构网型SVG的直驱风机并网系统的建模与小信号稳定性研究
- 2025年职业技能鉴定考试(行政办事员政务服务办事员初级)历年参考题及答案
- 建筑工程施工技术课件1土方工程
- 家居护理创业计划
- 教育学原理 第二版 课件 第5章 人的全面发展教育
评论
0/150
提交评论