版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、0,第1章 程序设计概述,2020年7月25日,如何尽快学会用C语言进行程序设计,了解程序设计语言(C语言) 模仿、改写、编写 通过不断的编程实践,逐步领会和掌握程序设计的基本思想和方法。,2020年7月25日,第1章 程序设计概述,本章要点: 什么是程序?程序设计语言包含哪些功能? 程序设计语言在语法上包含哪些内容? 结构化程序设计有哪些基本的控制结构? C语言有哪些特点? 形成一个可运行的C语言程序需要经过哪些步骤? 程序设计的一般方法 是怎样? 程序设计的表示方法?,2020年7月25日,1.1 几个C语言程序,例 1 打印一个语句。 程序: main( ) printf(A simpl
2、e c program.n); 经编译后运行结果如下: A simple c program.,2020年7月25日,#include /* 编译预处理命令 */ int main(void) /* 主函数 */ int n; /* 变量定义 */ int factorial(int n); /* 函数声明 */ scanf(%d, ,例2 求阶乘问题。输入一个正整数n,输出n!。,2020年7月25日,(1) C程序是由函数构成的。 (2) 一个函数由两部分组成: 函数的首部和函数体。 (3) main函数通常位于程序之首, 实际上它位于程序的开头、 最后及函数与函数之间均是合法的, 但不管
3、在什么位置,一个C程序总是从main函数开始执行的。 (4) C程序书写格式自由, 一行内可以写几个语句, 一个语句可以分写在多行上。 (5) C语言本身没有输入输出语句。 (6) 可以用/* */对C程序中的任何部分作注释, 它可增加程序的可读性。,结论:通过上述两个例子, 我们可以看到,2020年7月25日,1.2 程序与程序设计语言,程序 人们为解决某种问题用计算机可以识别的代码编排的一系列加工步骤。 程序的执行过程实际上是对程序所表达的数据进行处理的过程。 程序设计语言 提供了一种表达数据与处理数据的功能 要求程序员按照语言的规范编程,2020年7月25日,1.程序与指令,指令:计算机
4、的一个最基本的功能 如实现一次加法运算或实现一次大小的判别。 计算机的指令系统:计算机所能实现的指令的集合 。 程序:一系列计算机指令的有序组合。,2020年7月25日,Input A; 输入第1个数据到存储单元A中 Input B; 输入第2个数据到存储单元B中 Input C; 输入第3个数据到存储单元C中 Add A B D; 将A、B相加并将结果存在D中 Add C D D; 将C、D相加并将结果存在D中 Output D; 输出D的内容,例:输入输入3个数A, B和C,求 A+B+C的结果,2020年7月25日,2.程序设计语言的功能,数据表达:表达所要处理的数据 流程控制:表达数据
5、处理的流程,2020年7月25日,(1)数据表达,数据表达:一般将数据抽象为若干类型。 数据类型:对某些具有共同特点的数据集合的总称。 代表的数据(数据类型的定义域) 在这些数据上做些什么(即操作或称运算) 例如:整数类型 包含的数据:,-2,-1,0,1,2, 作用在整数上的运算:+ 、 - 、 * 、 /等,2020年7月25日,(2)流程控制,结构化程序设计方法 将复杂程序划分为若干个相互独立的模块。 模块:一条语句(Statement)、一段程序或一个函数(子程序)等。 单入口、单出口。,2020年7月25日,3.三种基本的控制结构,顺序结构,循环结构,分支结构,2020年7月25日,
6、语句级控制:3种基本的控制结构 顺序控制结构:自然顺序执行 分支控制结构(选择结构):根据不同的条件来选择所要执行的模块 循环控制结构:重复执行某个模块 单位级控制:函数的定义与调用 处理复杂问题时, 将程序分为若干个相对独立的子程序(函数),2020年7月25日,4.程序的编译与编程环境,(1)程序的编译 编译器 程序 计算机直接能理解的指令序列 编译器:对源程序进行词法分析、语法与语义分 析,生成可执行的代码。 直接指出程序中的语法错误 (2)编程环境 包括编辑程序(Edit)、编译(Compile)、调试(Debug)等过程。 (3)掌握程序设计语言:根据语言的语法,用语言表达数据、实现
7、程序的控制,并会使用编程环境。,2020年7月25日,C语言程序的调试、运行步骤,2020年7月25日,1.3 C语言的发展历史与特点,历史 1972年:贝尔实验室的Dennis Ritchie在B语言的基础上设计并实现了C语言。 1978年:B.W.Kernighan和D.Ritchie(简称K / input - radius of a circule double Area; / output - area of a circule double Circum; / output - circum of a circule printf(Enter radius:); scanf(%lf
8、, ,2020年7月25日,5 .测试与检查完成的程序,这一过程是用来测试和减产所涉及的程序是否按预期工作,要用不同数据结合来进行多次测试,从而保证程序在算法描述的所有情况下都能正常工作。 运行上述程序: Enter radius:5.0 The area is 78.5397 The circumference is 31.4159,2020年7月25日,1.5 程序设计的表示方法,程序设计的表示方法比较多,有流程图法、N-S图法、伪代码法、自然语言法等。这里我们介绍最常用的流程图表示法。 流程图是用一些图框和线条表示各种操作及其流程。这种图形表示是法直观形象、易于理解。图1-1给出了一些常
9、见的图框符号。,2020年7月25日,流程图元素,图 1.1 传统流程图常用符号,圆的完整程序读流程图表示如图1-2所示,2020年7月25日,问题:求1100间所有偶数的和,1问题分析与算法设计 思路:设置一个变量(sum),其初值为0,然后在1100的数中(i)寻找偶数,将它们一个一个累加到sum中。 一步累加:sum = sum + i; 重复累加,用循环语句实现,在循环过程中: (1) 判别 i 是不是偶数:用分支控制语句来实现。 (2) 对循环次数进行控制:通过 i 值的变化,2020年7月25日,#include int main(void) int i, sum = 0; for(i = 1; i = 100; i+) if (i%2 = 0) sum = sum + i; printf(%d, sum); return 0; ,2编辑程序,2020年7月25日,分析:用自然语言可以描述为:先将两个数a和b进行比较,找出其最大者,然后再把它和第三个数c进行比较,如果它比第三个数大,则它就是最大数,否则第三个数c就是最大数。,例:求三个数的最大值问题,2020年7月25日,所谓伪码就是类似于程序设计语言的语句,但又不是任何一种真实的程序设计语言的语句,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年安徽高职单招语文考试真题(含答案)
- 2026年安徽专升本语文考试试卷及答案
- 年轻干部思想动态分析调研报告2026(3篇)
- 分布式数字档案馆应用系统:架构、实现与优化
- 2026年湖南省湘教版高三语文一轮复习现代文阅读冲刺试卷
- 2025-2026年高一道德与法治上册第11单元公民意识测试卷
- 2026年江苏省高三历史一轮复习中国现代史第一章测试卷
- 2025-2026年上海市部编版初中历史下册第10单元综合测试卷
- 农行城区支行在统筹城乡发展中的定位与业务创新转型研究
- DLT 2919-2025 电化学储能电站经济评价导则标准立项发展报告
- 《电机与电气控制技术》课件-1-4 继电器的认识与检测
- 2026第三季度广西一键游数智文旅产业集团有限公司社会招聘12人笔试题库带答案
- 防汛安全专项措施培训课件
- 小学英语全套语法专项练习题(人教PEP全学段含解析)
- 2026年秋季六年级(劳动)上册教学计划
- 2026年新教材译林版九年级上册英语:全册单词+短语详解(知识清单)
- 2026秋西师大版小学数学五年级(新教材)上册教学计划附教学进度表
- 2026年教师招聘考试初中信息技术学科专业知识真题
- 2026年机械制图与公差第一二三章培训课件
- 1.2 能“听”的人工智能教学设计初中信息科技电子工业版2022第六册九年级下-电子工业版2022
- 2026-2030中国乳胶医用手套行业市场发展趋势与前景展望战略分析研究报告
评论
0/150
提交评论