




免费预览已结束,剩余36页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 3 14 任课教师 许创 1 C语言程序设计 任课教师介绍许创副教授 工学院计算机系 手机 692211E mail cxu 网站 2020 3 14 任课教师 许创 2 上机习题 CH1EX3 调试程序 找出其中错误并改正 CH2ABS a b是任意输入的两个整数 计算a b 并显示计算结果 CH2CVS 输入一个华氏温度F 输出对应的摄氏温度 公式为 c 5 9 F 32 练习 2 62 72 8 2020 3 14 任课教师 许创 3 第1章C语言程序设计基本概念 了解C语言的历史和特点熟悉计算机语言的不同类型了解C语言的结构理解C语言程序的开发过程了解算法的概念了解结构化程序设计方法 学习目标 2020 3 14 任课教师 许创 4 C语言的特点语言简洁 紧凑 使用方便 灵活运算符丰富 具有多种运算功能有丰富的数据类型生成代码质量高 程序执行效率高C程序的可移植性好是一种结构化程序设计语言语法限制不严 程序设计自由度大C提供的位运算可直接对硬件操作 2020 3 14 任课教师 许创 5 程序设计语言 人与计算机进行信息交流的工具机器语言汇编语言高级语言面向过程语言 C PASCAL等 面向对象语言 JAVA C 等 甚高级语言 尚在开发 2020 3 14 任课教师 许创 6 机器语言1 与计算机硬件的设计密切相关 无移植性 2 是计算机能直接识别的语言3 由一组二进制0和1序列构成 例 计算4 8取数1011000000000100将4送累加器加00000100000010008与累加器中的4相加停机11110100 特点 繁琐 难记 难读 难写 不可移植 2020 3 14 任课教师 许创 7 汇编语言1 与计算机硬件的设计密切相关2 计算机不能直接识别3 计算机基本操作是采用英语缩写的助记符来编写程序 例 计算4 8MOVEAL 4将4送累加器ADDAL 88与累加器中的4相加HLT停机 2020 3 14 任课教师 许创 8 汇编程序 将汇编语言程序转换为计算机能识别的机器语言 2020 3 14 任课教师 许创 9 高级语言基本与计算机的硬件设备无关 例 计算4 8 用C语言编写 sum 4 8 编译程序 高级语言转换为机器语言的翻译程序 2020 3 14 任课教师 许创 10 简单的C程序实例 运行结果 WelcometoCprogramming 例1 1 第一个C程序 include stdio h voidmain 函数头 printf WelcometoCprogramming n 注释 头文件 主函数 注释 系统提供的输出函数 2020 3 14 任课教师 许创 11 例1 2 编写求三数中最大值问题的程序 includeintmax value inta intb intc intmax if a b max a elsemax b if max c max c return max voidmain intx y z maxx scanf d d d 输入 857输出 max 8 2020 3 14 任课教师 许创 12 C语言程序的构成C程序由函数组成每个函数完成相对独立的功能C提供了丰富的库函数每个C程序都有一个叫做main的主函数main 后面花括号内的部分叫函数体函数体含 说明部分 和 执行部分 说明部分和执行部分各由若干语句组成语句以分号为结束标记 2020 3 14 任课教师 许创 13 C函数的一般形式函数类型函数名 形式参数表 说明 定义部分函数执行部分 2020 3 14 任课教师 许创 14 NiklausWirth提出的著名公式 数据结构 算法 程序什么是算法 对特定问题求解方法和步骤的一种描述 算法的两大要素 操作 控制结构算法解决的问题 做什么 如何做 算法 2020 3 14 任课教师 许创 15 算法的特性 1 有穷性2 确定性3 有效性4 有零个或多个输入5 有一个或多个输出描述算法的工具 自然语言伪代码流程图NS图等等 2020 3 14 任课教师 许创 16 例 求三个数中最大值问题 自然语言 日常使用的语言先将a b进行比较 找出其中的大数 然后再把它和第三个数c进行比较 如果它比c大 则它就是最大数 否则c是最大数 伪代码 介于自然语言和计算机语言之间的文字和符号进行描述 IFa bTHENmax aELSEmax bIFmax cTHEN输出maxELSE输出c 2020 3 14 任课教师 许创 17 流程图 传统图语言表示法ANSI规定了一些常用的流程图符号 起止框输入输出框判断框处理框流程线连接圈 例 酱油与醋的问题 试用自然语言描述如何将酱油与醋互换位置的过程 2020 3 14 任课教师 许创 18 三个数中最大值问题的流程图 图1 4 2020 3 14 任课教师 许创 19 N S图 结构化流程图 图语言表示法三个数中最大值问题的N S图 图1 5 2020 3 14 任课教师 许创 20 结构化程序设计方法 结构化程序设计的基本方法 自顶向下 逐步求精 将复杂问题分解为若干的独立的小问题 小模块 例 求解两个数的平均值1 分解 问题分解为三个模块 S1 输入两个数a bS2 求两个数的平均值赋给averS3 输出平均值 2020 3 14 任课教师 许创 21 2 实现方法 算法细化S1 调用输入函数 完成输入S2 设计一个求解平均值的函数averge S3 调用输出函数 完成输出 3 C语言实现主函数的编程 求两个数的平均值voidmain 主函数 floata b ave 声明a b和ave为实型变量scanf f f 输出ave的值 2020 3 14 任课教师 许创 22 4 逐步求精 设计averag floatx floaty 函数的算法 设两个参数为floatx floaty S2 1 把x加y的和除2的值送给averS2 2 把aver的值返回给主函数 5 C语言实现averag floatx floaty 函数的编程 includefloataverage floatx floaty 求两个数的平均值 floataver 声明aver为实型变量aver x y 2 计算两个数的平均值赋给averreturn aver aver的值作为函数的的返回值 2020 3 14 任课教师 许创 23 6 两模块连接成一个完整的求解程序 includefloataverage floatx floaty 求两个数的平均值 floatz aver 声明aver为实型变量aver x y 2 计算两个数的平均值赋给averreturn aver aver的值作为函数的的返回值 voidmain 主函数 floata b ave 声明a b和ave为实型变量scanf f f 输出ave的值 2020 3 14 任课教师 许创 24 用自然语言描述 S1 输入两个整数x yS2 交换x y细化S2 S2 1 将x赋给tS2 2 将y赋给xS2 3 将t赋给y 相应的程序段 输入x yscanf d d 例1 3 设计两整数交换的算法 2020 3 14 任课教师 许创 25 两数交换的另一个奇特难懂的算法 S1 输入两个整数x yS2 将x y赋给xS3 将x y赋给yS4 将x y赋给x相应的程序段 scanf d d 2020 3 14 任课教师 许创 26 例 对于一个大于3的整数 判断它是不是素数 循环之例 算法如下 1 输入n2 i 23 n被i除 得余数r4 若r 0 则输出n 不是素数 算法结束5 i i 16 若i n 2 则重新执行3 否则执行7 7 输出n 是素数 算法结束 2020 3 14 任课教师 许创 27 结构化程序的三种基本控制结构 顺序结构选择结构 if else 循环结构 while repeat until 顺序结构 流程图 N S图 先执行A操作 再执行B操作 2020 3 14 任课教师 许创 28 选择结构 流程图 N S图 当P条件成立 为真T 执行A否则 为假F 执行B 2020 3 14 任课教师 许创 29 循环结构1 while 流程图 N S图 当P条件成立 为真T 反复执行A 直到P为 假 时结束 2020 3 14 任课教师 许创 30 循环结构2 repeat until 流程图 N S图 先执行A操作 再判断P 若为 假 再执行A 直到P为 真 时结束 2020 3 14 任课教师 许创 31 三种基本结构的共同特点 1 单入口2 单出口3 无死语句4 无死循环 顺序 选择 循环 2020 3 14 任课教师 许创 32 C程序的编辑 编译和执行 编辑 利用编辑器 通过键盘将C源程序输入到计算机 并以文件形成保存到磁盘 编译 利用编译器 将C源程序编译成目标程序 连接 利用连接器 将C已编译的目标程序和库函数连接之后 生成可执行文件 并以文件形成存入到磁盘上 文件扩展名为 exe 运行 在操作系统下运行可执行文件 2020 3 14 任课教师 许创 33 上机实践运行环境 turboC 2 0或3 0 编辑 录入 修改编译 翻译为二进制代码 obj 连接 连接各模块的二进制代码 生成可执行文件 exe 运行 运行程序 2020 3 14 任课教师 许创 34 TurboC2 0上机环境简介 四个最主要菜单File创建新文件 打开文件 保存文件 改变目录 退出系统Edit切换到编辑状态Compile编译 连接成目标文件或可执行文件Run自动编译 连接并运行 2020 3 14 任课教师 许创 35 TurboC3 0上机环境简介 五个最主要菜单File创建新文件 打开文件 保存文件 改变目录 退出系统Edit常用编辑命令Compile编译 连接成目标文件或可执行文件Run自动编译 连接并运行Windows窗口切换 2020 3 14 任课教师 许创 36 可用快捷键打开菜单如按 F可打开文件菜单输入程序前一般应先改变好目录File Changedir先编译 后保存 再运行在3 0版本 可用鼠标 在多程序窗口环境下可选 Windows Next 命令作窗口切换 2020 3 14 任课教师 许创 37 TurboC常用编辑命令 上翻一屏 下翻一屏 移到行首 移到行尾 QR 移到文件首 QC 移到文件尾 2020 3 14 任课教师 许创 38 QF 查找 I 查找下一个 QA 查找并替换 Y 删除一行 N或 插入一行 向前删一个字符 向后删一个字符 2020 3 14 任课教师 许创 39 QY 从光
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 期末汇报幼儿园发言稿
- 创意画钟表课件
- 小班水彩创作课件
- 时间与生命的课件
- 时光老人与流浪汉课件
- 二零二五年度跨境代付款服务三方合作协议书
- 2025版房地产经纪保密合作协议
- 二零二五年度影视制作公司投资与合作协议0001
- 二零二五年离婚协议有声书版权授权与内容更新合同
- 2025版离婚协议书英文翻译与本土化适应研究
- 2025年留疆战士考试题库及答案
- 新初一入学分班考试语文卷(含答案)
- 2025年高考英语新课标Ⅱ卷点评及2026备考方向 课件
- 2025广西专业技术人员公需科目培训考试答案
- 护士延续注册申请审核表
- CIE1931-色坐标-三刺激值
- 中航工业运营管理体系内容介绍课件
- 2009-2022历年江苏省镇江市丹阳市事业单位考试《综合知识和能力素质(计算机类岗位)》真题含答案2022-2023上岸必备带详解版3
- 交流电气装置的过电压保护及绝缘配合
- 工业园区消防安全标准化
- 人教版高中化学必修一离子方程式双线桥单线桥专项练习
评论
0/150
提交评论