程序设计基础:ch01 绪论

上传人:公**** 文档编号:570137367 上传时间:2024-08-02 格式:PPT 页数:25 大小:365KB
返回 下载 相关 举报
程序设计基础:ch01 绪论_第1页
第1页 / 共25页
程序设计基础:ch01 绪论_第2页
第2页 / 共25页
程序设计基础:ch01 绪论_第3页
第3页 / 共25页
程序设计基础:ch01 绪论_第4页
第4页 / 共25页
程序设计基础:ch01 绪论_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《程序设计基础:ch01 绪论》由会员分享,可在线阅读,更多相关《程序设计基础:ch01 绪论(25页珍藏版)》请在金锄头文库上搜索。

1、程序设计基础程序设计基础(国家级精品课国家级精品课)教材教材 大学计算机程序设计基础大学计算机程序设计基础 程序设计基础习题集程序设计基础习题集参参 考考 文文 献献nNiklaus Wirth , AlgorithmsData structures=Programs , Eng lewood cliffs, Prentice-Hall, Inc. n裘宗燕裘宗燕从问题到程序,程序设计与从问题到程序,程序设计与C语言引论语言引论 北京北京 机械工业出版社机械工业出版社n张长海张长海 程序设计基础程序设计基础 北京北京 高等教育出版社高等教育出版社n尹宝林尹宝林C程序设计思想与方法程序设计思想与

2、方法 北京北京 机械工业出版社机械工业出版社 nSamuel P.Harbison III,Guy L.steele Jr. , C:A Reference Manual,Fifth Edition , Prentice-Hall,Inc. February nISO/IEC 9899:1999/Cor.1:2001(E)Information technology Programming languagesCnGB/T 1527294 中华人民共和国国家标准中华人民共和国国家标准 程序设计语言程序设计语言C1994-12-7第一章第一章 绪论绪论n鸡兔同笼鸡兔同笼 计算计算 n算法算法nPA

3、D图图 n程序程序n运行运行n计算机的基本结构计算机的基本结构 nC 语言语言nVisual C+集成开发环境集成开发环境 作业作业 1.2 1.4 熟悉开发环境熟悉开发环境熟悉开发环境熟悉开发环境练习练习 1.1 1.5 1.7 1.8 习题集习题集 P9:141.1 鸡兔同笼鸡兔同笼 计算计算 【例例1.1】我国古代数学著作我国古代数学著作孙子算经孙子算经中所中所载载“鸡兔同笼鸡兔同笼”问题如下:问题如下:“今有鸡兔同笼,上有三今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?十五头,下有九十四足,问鸡兔各几何?” 解:分析如下:解:分析如下: 第一步,解决该问题应该首先把问题数学化

4、。根据题第一步,解决该问题应该首先把问题数学化。根据题目条件,设有目条件,设有x只鸡,只鸡,y只兔,可以列出二元一次方程组:只兔,可以列出二元一次方程组:x+y=35 (1)2*x+4*y=94 (2) 第二步,解该方程组。二元一次方程组有各种方法,第二步,解该方程组。二元一次方程组有各种方法,现在选择消元法,现在选择消元法, 第三步,使用消元法解上述二元一次方程组,按如下步骤第三步,使用消元法解上述二元一次方程组,按如下步骤进行:进行: 1. 把方程把方程(1)乘以乘以2:计算:计算1*2;35*2;得到方程:;得到方程:2*x+2*y=70 (3) 2. 把方程把方程(2)减去方程减去方程

5、(3):计算:计算2-2;4-2;94-70;得到;得到方程:方程:2*y=14 (4) 3. 解该一元一次方程:计算解该一元一次方程:计算14/2y,得到未知数,得到未知数y的值。的值。 4. 把把y值代入方程(值代入方程(1)得一元一次方程()得一元一次方程(5)x+7=35 (5) 5. 解该一元一次方程:计算解该一元一次方程:计算35-7x得到未知数得到未知数x的值。的值。实际计算过程实际计算过程这就是程序这就是程序 这个过程就是程序设计这个过程就是程序设计 1*2a;35*2b4-aa94-bbb/ay35-yx程序设计过程程序设计过程 1.1.建立数学模型建立数学模型建立数学模型建

6、立数学模型把实际问题转化为数学问题把实际问题转化为数学问题把实际问题转化为数学问题把实际问题转化为数学问题2.2.找出计算方法找出计算方法找出计算方法找出计算方法为数学问题的求解找出方法为数学问题的求解找出方法为数学问题的求解找出方法为数学问题的求解找出方法3.3.进行算法分析进行算法分析进行算法分析进行算法分析为实现计算方法给出具体算法为实现计算方法给出具体算法为实现计算方法给出具体算法为实现计算方法给出具体算法4.4.选择程序设计语言,编出计算机程序选择程序设计语言,编出计算机程序选择程序设计语言,编出计算机程序选择程序设计语言,编出计算机程序写程序写程序写程序写程序5.5.调试程序调试程

7、序调试程序调试程序保证程序的正确性保证程序的正确性保证程序的正确性保证程序的正确性6.6.运行,测试程序的正确性运行,测试程序的正确性运行,测试程序的正确性运行,测试程序的正确性组装测试、确认测试组装测试、确认测试组装测试、确认测试组装测试、确认测试7.7.交付使用并维护交付使用并维护交付使用并维护交付使用并维护 1.2 算法算法 n n什么是算法什么是算法一个计算过程,包含具体明确的操作一个计算过程,包含具体明确的操作一个计算过程,包含具体明确的操作一个计算过程,包含具体明确的操作描述了解决问题的方法和途径描述了解决问题的方法和途径描述了解决问题的方法和途径描述了解决问题的方法和途径是程序设

8、计的基础和精髓是程序设计的基础和精髓是程序设计的基础和精髓是程序设计的基础和精髓 n n有效算法的特点有效算法的特点有穷性有穷性有穷性有穷性确定性确定性确定性确定性有效性有效性有效性有效性算法的组成算法的组成n n基本操作基本操作表达式以及给变量赋值表达式以及给变量赋值表达式以及给变量赋值表达式以及给变量赋值读(输入)读(输入)读(输入)读(输入)写(输出)写(输出)写(输出)写(输出)n n基本控制结构基本控制结构顺序控制结构顺序控制结构顺序控制结构顺序控制结构分支控制结构分支控制结构分支控制结构分支控制结构循环控制结构循环控制结构循环控制结构循环控制结构函数调用函数调用函数调用函数调用函数

9、返回函数返回函数返回函数返回1.3 PAD (Problem Analysis Diagram) 操操 作作操作操作1操作操作2操作操作n 图图1.2 基本操作基本操作图图1.3 顺序控制结构顺序控制结构 4-aa4-aa94-bb94-bbb/ayy35-yxx打印输出打印输出1*2a;35*2bb例例1.11.1算法的算法的PADPAD描述描述1.4 程序程序 n n什么是程序什么是程序指令序列指令序列指令序列指令序列 n n程序语言程序语言与计算机交流与计算机交流与计算机交流与计算机交流下达指令下达指令下达指令下达指令 1*2a;35*2b4-aa94-bbb/ay35-yx具体程序具体

10、程序#include / 括入标准输入输出函数库头文件括入标准输入输出函数库头文件int a,b,x,y ; /声明声明5个变量,分别表示计算用的中间结果,和最后结果个变量,分别表示计算用的中间结果,和最后结果void main(void) / 主函数主函数 a=1*2;/ 方程(方程(1)乘以)乘以2b=35*2;a=4-a;/ 方程(方程(2)减方程()减方程(3)b=94-b;y=b/a;/ 求求yx=35-y;/ 求求xprintf(“鸡:鸡:%3d 兔:兔:%3dn”,x,y);/ 打印输出打印输出括入头文件括入头文件声明声明主函数主函数一般一般C程序程序文件文件hello.c #i

11、nclude void hello(void) printf(“Hello!n”); 文件文件startup.c extern void hello(void); int main(void) hello(); return 0n n一个一个一个一个C C程序由一个或若干个编译单元组成,每个程序由一个或若干个编译单元组成,每个程序由一个或若干个编译单元组成,每个程序由一个或若干个编译单元组成,每个编译单元是一个源程序文件;编译单元是一个源程序文件;编译单元是一个源程序文件;编译单元是一个源程序文件;n n一个编译单元由若干顶层声明组成,每个顶层声一个编译单元由若干顶层声明组成,每个顶层声一个编

12、译单元由若干顶层声明组成,每个顶层声一个编译单元由若干顶层声明组成,每个顶层声明是一个声明或函数定义,其中主要为函数定义;明是一个声明或函数定义,其中主要为函数定义;明是一个声明或函数定义,其中主要为函数定义;明是一个声明或函数定义,其中主要为函数定义;n n声明包括类型定义、变量声明、外部声明、宏、声明包括类型定义、变量声明、外部声明、宏、声明包括类型定义、变量声明、外部声明、宏、声明包括类型定义、变量声明、外部声明、宏、 等;等;等;等;n n任何任何任何任何C C程序必须包含且仅包含一个主函数程序必须包含且仅包含一个主函数程序必须包含且仅包含一个主函数程序必须包含且仅包含一个主函数mai

13、nmain。概括:概括:C程序结构程序结构1.5 运行运行n机器语言机器语言 1010 1001 0001 0110 0000 0001 0011 1100 0001 1000 0000 0001 0000 0000 0000 00000000 0000 0000 0000n高级语言高级语言if (XY) Y=X+15; else Y=X-15;程序执行程序执行将可执行程序送入计算机将可执行程序送入计算机并启动计算机执行并启动计算机执行得到最后结果得到最后结果用汇编语言或高级语言编出程序用汇编语言或高级语言编出程序编辑、录入源程序编辑、录入源程序由翻译器(编译程序)由翻译器(编译程序)将源程序

14、翻译成机器语言程序将源程序翻译成机器语言程序由连接程序将机器语言程序连接由连接程序将机器语言程序连接生成计算机可执行的程序生成计算机可执行的程序将可执行程序送入计算机将可执行程序送入计算机并启动计算机执行并启动计算机执行得到最后结果得到最后结果用汇编语言或高级语言编出程序用汇编语言或高级语言编出程序编辑、录入源程序编辑、录入源程序由翻译器(编译程序)由翻译器(编译程序)将源程序翻译成机器语言程序将源程序翻译成机器语言程序由连接程序将机器语言程序连接由连接程序将机器语言程序连接生成计算机可执行的程序生成计算机可执行的程序出错出错数据出错数据出错程序出错程序出错一般一般C程序执行程序执行文件文件h

15、ello.c #include void hello(void) printf(“Hello!n”); 文件文件startup.c extern void hello(void) int main(void) hello(); return 0hello.c hello.obj startup.exestartup.c startup.obj1.6 计算机的基本结构计算机的基本结构 如图,一个计算机系统由中央处理机(如图,一个计算机系统由中央处理机(如图,一个计算机系统由中央处理机(如图,一个计算机系统由中央处理机(CPUCPU),内存储),内存储),内存储),内存储器,及若干外部设备组成。器

16、,及若干外部设备组成。器,及若干外部设备组成。器,及若干外部设备组成。 内存储器内存储器运算器运算器控制器控制器磁盘机磁盘机显示器显示器键盘键盘打印机打印机.中央处理机中央处理机()()外部设备外部设备 内存储器是计算机的记忆装置,用来存放程序和参与运算内存储器是计算机的记忆装置,用来存放程序和参与运算的数据。一台计算机的存储器能够存储大量的信息,内存储器的数据。一台计算机的存储器能够存储大量的信息,内存储器分成若干单元,并顺序的给每个单元编以一定的号码,称为该分成若干单元,并顺序的给每个单元编以一定的号码,称为该单元的单元的“地址地址”。一般以位二进制为编址单位,也就是说一。一般以位二进制为

17、编址单位,也就是说一个单元可以存放位二进制信息,称作一个字节个单元可以存放位二进制信息,称作一个字节(byte),二个,二个或四个字节称作一个机器字或四个字节称作一个机器字(word)。有时还称一位二进制为一。有时还称一位二进制为一个位个位(bit)。可以按单元地址来访问某一单元的信息。可以按单元地址来访问某一单元的信息。 中央处理机包括控制器和运算器两部分。中央处理机包括控制器和运算器两部分。 控制器控制整个计算机系统的工作。它依次从存储器中取出控制器控制整个计算机系统的工作。它依次从存储器中取出一条条指令,对指令进行分析,然后按指令的要求向计算机的其一条条指令,对指令进行分析,然后按指令的

18、要求向计算机的其它部件发出命令,指挥整个计算机系统的工作。它部件发出命令,指挥整个计算机系统的工作。 运算器是进行算术和逻辑运算的。它接收由控制器发来的运运算器是进行算术和逻辑运算的。它接收由控制器发来的运算命令,依据命令的要求进行相应的算术和逻辑运算。算命令,依据命令的要求进行相应的算术和逻辑运算。外部设备又称计算机的输入输出设备,也简称为外部设备又称计算机的输入输出设备,也简称为I/O设备。它们设备。它们是计算机与外界交流信息的装置。人们通过是计算机与外界交流信息的装置。人们通过I/O设备将程序,数设备将程序,数据等信息送入计算机中。计算机通过据等信息送入计算机中。计算机通过I/O设备将计

19、算结果,控制设备将计算结果,控制信号等信息输出出来,供人们使用。常见的信号等信息输出出来,供人们使用。常见的I/O设备有终端显示设备有终端显示器,终端键盘,打印机,磁盘机,磁带机,绘图仪等等。器,终端键盘,打印机,磁盘机,磁带机,绘图仪等等。1.6 C语言语言n70年代初,年代初,C 语言在美国贝尔实验室诞生。它的前身可语言在美国贝尔实验室诞生。它的前身可以追朔到以追朔到ALGOL60 、CPL 、BCPL 、B 。n1982年年C标准化工作开始标准化工作开始 。n1989年年ISO公布公布ISO/IEC 9899:1990 ,简称,简称“C89”。n1995年对年对C89作修改和补充,称为作

20、修改和补充,称为“C95”。n1999对对C进行更大的修订后,公布进行更大的修订后,公布 ISO/IEC 9899:1999,简称,简称“C99”。n我国于我国于1994年年12月月4日公布了日公布了“中华人民共和国国家标中华人民共和国国家标准准 GB/T 15272-94 程序设计语言程序设计语言 C”。C语言的优点语言的优点1.语言简洁、紧凑,使用方便、灵活;语言简洁、紧凑,使用方便、灵活;2.C本身是模块式,便于集体分工合作开发大本身是模块式,便于集体分工合作开发大型程序型程序3.运算符丰富运算符丰富4.数据结构丰富数据结构丰富5.具有结构化控制结构具有结构化控制结构6.与计算机硬件联系

21、紧密,可以直接访问计算与计算机硬件联系紧密,可以直接访问计算机内存,具有位操作机内存,具有位操作7.生成目标代码质量高。生成目标代码质量高。 C语言的缺点语言的缺点1.语法不严格语法不严格2.类型机制不严密,比如字符类型与整数类型类型机制不严密,比如字符类型与整数类型没有区别、不检查下标超界没有区别、不检查下标超界3.程序设计自由度太大,不利于保证程序的正程序设计自由度太大,不利于保证程序的正确性确性4.若程序与计算机硬件联系太密切,则可移植若程序与计算机硬件联系太密切,则可移植性不好性不好5.有些语言成分太复杂,比如运算符有些语言成分太复杂,比如运算符6.语言本身不能保证程序设计的结构化。语言本身不能保证程序设计的结构化。1.7 Visual C+集成开发环境集成开发环境 nHello 程序程序启动启动启动启动VC+VC+ 建立环境建立环境建立环境建立环境 录入、编辑源程序录入、编辑源程序录入、编辑源程序录入、编辑源程序 编译编译编译编译 连接连接连接连接 运行运行运行运行 n鸡兔同笼的具体程序鸡兔同笼的具体程序本章小结本章小结n鸡兔同笼鸡兔同笼 计算计算 算法算法PAD图图 程序程序n程序的执行程序的执行n程序结构程序结构n计算机的基本结构计算机的基本结构 nC 语言语言nVisual C+集成开发环境集成开发环境

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号