程序设计基础课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《程序设计基础课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 基础 课件
- 资源描述:
-
1、1程序设计基础Introduction to Computer Programming2教学安排课程名称: 程序设计基础(Introduction to Computer Programming)教学对象: 计算机软件专业的新生教学目标: 目标有二:掌握一种编程工具(C语言);掌握程序设计的基本思路和方法,提高分析问题、解决问题的能力。3教学安排教学方法:课堂讲解:基本概念、C语言的语法、语句,编程解题的基本思路、方法。每堂课要带上纸、笔,进行课题练习。鼓励创新、鼓励上台讲解自己的方法;上机实践:实践性极强的课程,将有大量的编程练习,“赶鸭子上架”。每周有一次固定上机时间,其余自由上机;4教学
2、安排参考书:考核方式:1. “程序设计基础”,吴文虎2. “C 程序设计”,谭浩强;3. The C Programming Language(Kernighan & Ritchie)上机练习 期中考试 期末考试 (20%) (20%) (60%)教 材:“计算机语言与程序设计”,谌卫军 清华大学出版社,20075教学安排教学日历:1. 程序设计概述2. 数据类型与表达式3. 顺序结构程序设计、选择结构程序设计4. 循环控制5. 数组6. 作业讲评(编程规范、程序调试)7. 函数8. 期中考试6教学安排教学日历(续):9.指针10. 结构体11. 链表12. 算法引论13. 基于分治策略的递归
3、算法14. 基于回溯策略的递归算法15. 习题课,总复习7教学安排http:/ door is always open for you.9教学安排COPY若发现两份相同的程序,均记0分。10小调查 编程基础 参加过程序设计类比赛(省、市、全国); 使用过C语言或其他编程语言,编写过一些小程序; 熟悉电脑操作,熟悉Windows操作系统,熟悉各种应用软件的使用; 没有接触过太多的计算机。11两个特别计划 编程非常强的学生 可以申请免修; 做一个大作业,自己选题,教师批准; 编程基础弱的学生 随时到办公室找我问问题。12教学安排Any question?13第 一 章 程序设计概述14第一章 程序
4、设计概述1. 计算机、问题与程序2. C语言简介3. 一个例子4. C程序的上机步骤151.1 计算机、问题与程序1.1.1 这是一个计算机的时代16计算机能够做哪些事情? 琴:电脑合成的音乐; 棋:1997年5月,IBM公司的“深蓝”战胜国际象棋世界冠军卡斯帕罗夫; 书:电脑能够打印出各种字体的文字:宋体、楷体、隶书,等等; 画:在计算机控制下,能够在布匹上刺绣、甚至能编织任意图案的毛线衣!17计算机能够做哪些事情?(续) 听:语音识别技术,文档录入,识别率较高,已有相关的产品,如IBM的ViaVoice; 说:语音合成技术,Text-To-Speech(TTS),新闻阅读、霍金,自然度较好
5、,也有相关产品; 读:自然语言理解,机器翻译、Internet网上基于内容的智能搜索; 写:电脑“写”的作文。18计算机的本质 计算机是一个超级计算器,是一种用来处理数据的通用途机器; 计算机以一种确定的方式来执行指令:F执行的是一组确定的指令序列;F执行的结果取决于系统的当前状态和输入的数据;19计算机硬件的体系结构中央处理器内存程序的执行过程20What makes computers so powerful? 速度快:F537 ?F人:1秒钟?FPentium III:10亿分之1秒! 精度高:F计算机:读取磁盘时,每隔10亿bits可能发生一个错误;F人:清华有多少个学生食堂?211.
6、1.2 这是一个充满问题的世界 中东问题; 国际恐怖主义、毒品问题; 环境卫生问题; 家庭矛盾; 青少年早恋的问题; 22 本课程关心的是:计算机能够解决的问题。 计算机能够解决很多的问题:数学计算、模拟、数据分析、机器人控制、文本编辑、企业管理、,等等; 遗憾的是,这些问题的描述方式一般是自然语言的形式,而不是机器指令的形式。231.1.3 计算机程序 通过编写程序来让计算机帮助我们解决问题; 何为程序?一个程序即一组计算机指令! 如何编写程序? 接受一个问题; 分析这个问题; 设想一种方法来解决这个问题; 在计算机上,用某种计算机语言来描述该解决方案,即编码; 测试和调试程序(debug)
7、。24 编程就象厨师烧菜,以红烧茄子为例; 原料(数据):茄子750克、肉片50克、葱姜蒜50克、酱油、盐、糖、鸡粉适量,水淀粉适量。 制作过程(算法): 将茄子切成块,葱姜蒜切末待用; 起油锅,待油热至八、九成时放入茄子,炸至茄子由硬变软时取出,将油沥干待用; 另起锅,锅中放油三汤匙,油热后,先爆香葱姜蒜,下肉片炒散,烹入酱油,加入少量水和鸡粉,放入茄子、盐、糖,大火煮开后改用小火煮至茄子入味,最后用淀粉勾芡。 程序 数据结构 算法25编程需要哪些技能? 编程既需要高层的创造性思维,又需要低层的细节处理; 一个好的程序员必须学会:F创造性地分析问题、解决问题;F小心翼翼地仔细编码。26计算机
8、语言 机器语言: 机器硬件执行的是用机器语言描述的指令; 指令的格式一般为: 由0、1组成,难以理解和编写,工作效率极低,正确性难以保证。1111011000000110100000000001010000000010011101001010100110000000111111000011001110001001000111101110110000000101101000011000011000000101101000111111010000000101101000111111001000001001操作码OP 地址码AD27 汇编语言: 用符号来表示指令的操作码和数据单元,使用较为方便,如a
9、dd ax,0; 汇编语言程序不能直接执行,需专门的汇编系统把它翻译成机器指令的形式,然后运行。 层次仍然太低,程序开发效率较低。mov eax, dword ptr ebp-4cmp eax, dword ptr ebp-8jle main+36h (00401046)mov ecx,dword ptr ebp-4mov dword ptr ebp-0Ch,ecxjmp main+3Ch (0040104c)mov edx,dword ptr ebp-8mov dword ptr ebp-0Ch,edx28 高级语言: 用一种更自然、更接近于人类语言习惯的符号形式(如数学公式)来编写程序,这
10、样写出来的程序更容易理解和使用; 高级语言程序也不能直接运行,需专门的编译器把它翻译为机器指令的形式,然后运行;if(x y) z = x; else z = y;29 高级语言的发展历史: 1950s:Fortran, Lisp 1960s:Cobol, Algol, APL 1970s:Basic, Pascal, C 1980s:Smalltalk, C+, Modula, Ada, Prolog 1990s:Java301.2 C语言简介1.2.1 C语言的历史C 语言Unix 操作系统管理和分配计算机的软硬件资源,合理地组织计算机的工作流程,并向用户提供各种服务功能。计算机系统示意图
11、CPU、内存、I/O设备(显示器、键盘、软盘机等)。(Word)31 1963年,MIT、贝尔实验室和GE决定联合开发MULTICS操作系统,该系统庞大而复杂,研制的难度远远超出人们的预料,因此贝尔实验室和GE先后退出了该项目; 1969年,贝尔实验室的Ken Thompson在MULTICS上编写了一个叫着“太空旅行”(Space Travel)的游戏,模拟一个飞行员驾驶一艘宇宙飞船在太阳系当中遨游,并且可以在各种星体上着陆。后来他们对MULTICS的访问被关闭了,因此Thompson在贝尔实验室找了一台无人使用的PDP-7计算机,然后和Dennis Ritchie在一台GE-635计算机上
12、,利用其GECOS所提供的一个交叉汇编器,把空间旅行游戏用PDP-7汇编语言重新编写,然后用穿孔纸带把它转移到PDP-7上;32 后来,Thompson和Ritchie等人开始为PDP-7编写一个新的操作系统。在写好了文件系统和一组基本的软件工具以后,他们编写了一个PDP-7的汇编器,这样他们就能够直接在PDP-7上编程了。到了1970年,操作系统的基本元素都已经完成了,他们给系统起了一个名字UNIX; 1970年夏,研究小组得到了一台新机器PDP-11,因此把Unix系统从PDP-7移植到PDP-11,这项工作非常繁琐,因为整个系统都是用汇编语言来编写的。研究小组开始考虑用高级语言来重写整个
展开阅读全文