C语言课件全.pptx_第1页
C语言课件全.pptx_第2页
C语言课件全.pptx_第3页
C语言课件全.pptx_第4页
C语言课件全.pptx_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计基础 控制科学与工程学院夏浩 自我介绍 主讲教师 夏浩 办公地点 创新园 大黑楼 A715 联系电话 84708152 E mail hao x xia 前续课程 后续课程 课程信息 4 必修 4学分 48学时授课 24学时上机 4 6 7 9 11 13周的周二晚上6 9点 西部校区计算中心606房间 课程考核期末考试 闭卷笔试 80 单元同步作业 5次 10 程序题必须上机调试后提交综合作业程序 设计报告 10 第13周提交考试时间 初定第14周周末 作业提交邮箱 dutchomework 5 教材 参考书 资料网址 教材基于VisualC 平台的标准C实用程序设计教程 杨素英等编著 清华大学出版社参考资料 1 C程序设计 第三版 谭浩强主编 清华大学出版社 20052 THECPROGRAMMINGLANGUAGE 美 BrianW KernighanandDennisM Ritchie 著 机械工业出版社3 基于VisualC 的标准C实用程序设计教程 上机指导与习题解资源网站 dutcpp 密码 c12345 6 2 注意听讲 解决难点 3 做好笔记 消化复习 4 完成作业 认真及时 5 强化实践 多多上机 1 课前预习 找出问题 课程要求 上机要求 共24机时 上机时间内 不做与本课程无关的事情 否则按缺课一次处理上机考勤 根据学校教务处规定超过三次 含三次 缺课者 本课上机的成绩视为不及格 7 1 掌握一种编写程序的工具 2 掌握程序设计的基本原理和方法 3 具备对一般工程问题的程序设计 编码和调试的能力 4 养成良好的编程习惯 课程目标 程序设计的思想 方法 经验 兴趣 能力和成功 8 现有21根火柴 你和计算机轮流取 每人 机 每次可以取1 4根 不可多取 也不可不取 谁取最后一根谁输 取火柴游戏 第一章概述 主要内容 计算机工作过程程序设计语言概述C语言概述运行 程序的步骤和方法上机运行 程序的方法 计算机基本工作过程 美籍匈牙利数学家冯 诺依曼 1903 1957 现代计算机之父 计算机基本工作过程 大脑 记忆装置 眼睛和耳朵 101110000000000100000000000001010000000100000000 1 1的机器代码 软件的形成 软件 Software 的形成程序员 Programmer 编写程序源代码 SourceCode 编译器 Compiler 把源代码转换为可被计算机理解的机器代码 MachineCode 并把机器代码以可执行文件 ExecutableFile 的形式保存在磁盘上 自然语言 人类为了交流思想 表达感情 交换信息 逐步发明了语言 人工语言 为了某种专门需要 人类又发明了一些新的交流工具 程序设计语言 人类为了能够更好地与计算机进行交流与通讯 发明了专门与计算机打交道的交流工具 计算机语言与人类语言 15 字 自然语言的构成 16 基本单元 词 常量 变量 函数 句子 语句 篇章 程序 编程并不神秘 与从小母语或自然语言如一门外语的学习有许多相似之处 计算机语言是一种跨国界的世界通用的语言 通过编程可以表达自己的思想 互相交流 高级程序员可以通过一个人编写程序的风格判断出这个人的习惯 性格 计算机程序语言的构成 17 CPU指令系统 由0 1序列构成的指令码组成如 10000000加10010000减 面向机器的语言 程序设计语言发展历史 用助记符号描述的指令系统如ADDA B 语法和结构类似英文 便于理解如c a b 18 程序设计语言发展历史 面向过程就是分析出解决问题所需要的步骤 然后用函数把这些步骤一步一步实现 使用的时候一个一个依次调用就可以了 面向对象是把构成问题事务分解成各个对象 建立对象的目的不是为了完成一个步骤 而是为了描叙某个事物在整个解决问题的步骤中的行为 面向对象是以功能来划分问题 而不是步骤 19 常见计算机语言分类 面向过程语言面向对象语言 FORTRANBASICCPASCALCOBOLLISP C C VisualCVisualBASICJAVA 20 21 C语言是国际上广泛流行的高级语言 可编写系统软件和应用软件 早期操作系统 汇编语言 依赖硬件 可读性 移植差 高级语言 功能不足 不能对硬件操作 两者兼备C语言是在B语言的基础上发展起来的 B BCPL 语言是1970年由美国贝尔实验室设计的 并用于编写了第一个UNIX操作系统 在PDP7上实现 1973年贝尔实验室的D M Ritchie在B语言的基础上设计出了C语言 但仅在贝尔实验室使用 1977年出现了不依赖具体机器的 可移植C语言编译程序 推动了UNIX在各种机器上实现 C语言也得到推广 其发展相辅相成 1978年影响深远的名著 TheCProgrammingLanguage 由BrianW Kernighan和DennisM Ritchie合著 被称为标准C 之后 C语言先后移植到大 中 小 微型计算机上 已独立于UNIX和PDP 风靡世界 成为最广泛的几种计算机语言之一 C语言发展过程 22 1983年 美国国家标准化协会 ANSI 根据C语言各种版本对C的发展和扩充 制定了新的标准ANSIC 比标准C有了很大的发展 1988年K R按照ANSIC修改了他们的 TheCProgrammingLanguage 1987年 ANSI公布了新标准 87ANSIC 1990年 国际标准化组织接受了87ANSIC为ISOC的标准 ISO9899 1990 1994年 ISO又修订了C语言标准 目前流行的C语言编译系统大多是以ANSIC为基础进行开发的 C语言发展过程 C语言祖师爷对C的评价 23 Cisquirky flawed andanenormoussuccess TheCprogramminglanguagewascreatedonatinymachineasatooltoimproveameagerprogrammingenvironment 24 C语言发展过程 说明 不同版本的C编译系统所实现的语言功能和语法规则又略有差别 因此读者应了解所用的C语言编译系统的特点 可以参阅有关手册 本课程的叙述基本上以ANSIC为基础 25 C语言特点 1 语言简洁 紧凑 使用方便 灵活 32个关键字 9种控制语句 程序形式自由 2 运算符丰富 34种运算符 3 数据类型丰富 具有现代语言的各种数据结构 4 具有结构化的控制语句 是完全模块化和结构化的语言 5 语法限制不太严格 程序设计自由度大 26 6 允许直接访问物理地址 能进行位操作 能实现汇编语言的大部分功能 可直接对硬件进行操作 兼有高级和低级语言的特点 7 目标代码质量高 程序执行效率高 只比汇编程序生成的目标代码效率低10 20 8 程序可移植性好 与汇编语言比 基本上不做修改就能用于各种型号的计算机和各种操作系统 27 32个关键字 由系统定义 不能重作其它定义 autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunsignedunionvoidvolatilewhile 28 9种控制语句 if else for while do while continuebreakswitchgotoreturn 29 34种运算符 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 及其扩展条件运算符 逗号运算符 指针运算符 求字节数 sizeof强制类型转换 类型 分量运算符 下标运算符 其它 30 C数据类型 基本类型 构造类型 指针类型 空类型void 定义类型typedef 数值类型 字符类型char 枚举类型enum 整型 浮点型 单精度型float 双精度型double 短整型short 长整型long 整型int 数组 结构体struct 共用体union 31 例1 1第一个程序Hello World example1 1ThefirstCProgram includevoidmain printf Hello World 编译预处理 标准函数库standardinput output 编译系统提供的文件名 函数名 输出 Hello World C程序格式和结构特点 复合语句 空类型 32 例1 2求两数之和 includevoidmain 求两数之和 inta b sum a 123 b 456 sum a b printf sumis d n sum 运行结果 sumis579 编译预处理 使用标准库函数中的输入和输出函数 33 例1 2求两数之和 includevoidmain 求两数之和 inta b sum a 123 b 456 sum a b printf sumis d n sum 运行结果 sumis579 main是函数的名称 主函数 一个程序只有一个主函数void表示此函数是空类型 不产生一个函数值 不返回函数值 求两数之和 表示注释 注释只是给人看的 对编译和运行不起作用 所以可以用汉字或英文字符表示 可以出现在一行中的最右侧 也可以单独成为一行 34 例1 2求两数之和 includevoidmain 求两数之和 inta b sum a 123 b 456 sum a b printf sumis d n sum 运行结果 sumis579 是函数开始和结束的标志 不可省 函数体开始 函数体结束 声明 定义变量为整型3行为C语句每个C语句以分号结束 是函数开始和结束的标志 不可省 函数体开始 函数体结束 声明语句 定义变量为整型3行为C语句每个C语句以分号结束 35 例1 3求2个数中较大者 includevoidmain 主函数 intmax intx inty 对被调用函数max的声明 inta b c 定义变量a b c scanf d d 输出c的值 程序运行情况如下 8 5 输入8和5赋给a和b max 8 输出c的值 intmax intx inty intz if x y z x elsez y return z 说明 本程序包括main和被调用函数max两个函数 max函数的作用是将x和y中较大者的值赋给变量z return语句将z的值返回给主调函数main 36 C程序构成 C程序是由函数构成的 这使得程序容易实现模块化 2 一个函数由两部分组成 函数的首部 例1 3中的max函数首部intmax intx inty 函数体 花括号内的部分 若一个函数有多个花括号 则最外层的一对花括号为函数体的范围 函数体包括两部分 声明部分 intz 可缺省执行部分 由若干个语句组成 可缺省 intmax intx inty intz if x y z x elsez y return z 37 3 C程序总是从main函数开始执行的 与main函数的位置无关 4 C程序书写格式自由 一行内可以写几个语句 一个语句可以分写在多行上 C程序没有行号 5 每个语句和数据声明的最后必须有一个分号 6 C语言本身没有输入输出语句 输入和输出的操作是由库函数scanf和printf等函数来完成的 C对输入输出实行 函数化 例1 3求2个数中较大者 includevoidmain intmax intx inty inta b c scanf d d 38 C语言格式特点习惯用小写字母 大小写敏感不使用行号 无程序行概念可使用空行和空格常用锯齿形书写格式 main main inti j sum sum 0 for i 1 i 10 i for j 1 j 10 j sum i j printf d n sum 优秀程序员的素质之一 使用TAB缩进 对齐有足够的注释有合适的空行 39 没有代码风格 includemain intfahr celsius intlower upper step lower 0 upper 300 step 20 fahr lower while fahr upper celsius 5 fahr 32 9 printf d t d n fahr celsius fahr fahr step http www ioccc orgTheInternationalObfuscatedCCodeContest 40 运行 程序的步骤和方法 运行 程序的步骤上机输入与编辑源程序对源程序进行编译与库函数连接运行目标程序 二进制 41 程序代码的录入 生成源程序 c 语法分析查错 翻译生成目标程序 obj 二进制 与其它目标程序或库链接装配 生成可执行程序 exe 42 目前使用的大多数C编译系统都是集成环境 IDE 的 可以用不同的编译系统对C程序进行操作 常用的有TurboC2 0 TurboC C 3 0 VisualC 等 TurboC 3 0 是一个集成环境 它具有方便 直观和易用的界面 虽然它也是DOS环境下的集成环境 但是可以把启动TurboC 3 0集成环境的DOS执行文件tc exe生成快捷方式 也可以用鼠标操作 VisualC 也可以用VisualC 对C程序进行编译 上机运行 程序的方法 43 VC 6 0的使用 启动VC 6 0 第一步 首先启动VC 6 0 在VC 6 0的标题栏里选择文件 然后选择新建 44 第二步 在工程的标签栏里选择Win32ConsoleApplication VC 6 0的使用 45 第三步 输入所建工程的名字和存放的位置 点击下一步 VC 6 0的使用 46 第四步 选择建立一个Anemptyproject VC 6 0的使用 47 第五步 在右边的workspace 工作区 里 鼠标右键点击SourceFiles 选择Addnewfiles VC 6 0的使用 48 第六步 在对话框里输入文件名 后缀选择 cpp或 c 即源文件的名字 VC 6 0的使用 49 第七步 点击下一步 产生源文件的编辑区域 VC 6 0的使用 50 第八步 在源文件的编辑区域 编辑源代码 VC 6 0的使用 51 第九步 点击编译工具栏里的第一个按钮 进行编译 compile 生成目标文件 file1 obj VC 6 0的使用 52 第十步 点击编译工具

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论