谭浩强C语言入门.ppt
《谭浩强C语言入门.ppt》由会员分享,可在线阅读,更多相关《谭浩强C语言入门.ppt(822页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘第一章第一章C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘l l 本章要点C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-1 1-1 语言出现的历史背景语言出现的历史背景C语言是国际上广泛流行的高级语言。C语言是在B语言的基础上发展起来的。B(BCPL)语言是1
2、970年由美国贝尔实验室设计的,并用于编写了第一个UNIX操作系统,在PDP 7上实现。优点:精练,接近硬件,缺点:过于简单,数据无类型。1973年贝尔实验室的D.M.Ritchie 在B语言的基础上设计出了C语言,对B取长补短,并用之改写了原来用汇编编写的UNIX,(即UNIX第5版),但仅在贝尔实验室使用。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-11-1语言出现的历史背景语言出现的历史背景1975年UNIX第6版发布,C优点突出引起关注。1977年出现了可移植C语言编译程序,推动了U
3、NIX在各种机器上实现,C语言也得到推广,其发展相辅相成。1978年影响深远的名著The C Programming Language由 Brian W.Kernighan和Dennis M.Ritchie 合著,被称为标准C。之后,C语言先后移植到大、中、小、微型计算机上,已独立于UNIX和PDP,风靡世界,成为最广泛的几种计算机语言之一。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-11-1语言出现的历史背景语言出现的历史背景1983年,美国国家标准化协会(ANSI)根据C语言各种版本对C
4、的发展和扩充,制定了新的标准ANSI C,比标准C有了很大的发展。1988年K&R按照 ANSI C修改了他们的The C Programming Language。1987年,ANSI公布了新标准87 ANSI C。1990年,国际标准化组织接受了87 ANSI C为ISO C 的标准(ISO98991990)。1994年,ISO又修订了C语言标准。目前流行的C语言编译系统大多是以ANSI C为基础进行开发的。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-11-1语言出现的历史背景语言出现的
5、历史背景说明:说明:不同版本的C编译系统所实现的语言功能和语法规则又略有差别,因此读者应了解所用的C语言编译系统的特点(可以参阅有关手册)。本书的叙述基本上以ANSI C 为基础。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-2 1-2 语言的特点语言的特点(1)语言简洁、紧凑,使用方便、灵活。32个关键字、9种控制语句,程序形式自由(2)运算符丰富。34种运算符(3)数据类型丰富,具有现代语言的各种数据结构。(4)具有结构化的控制语句,是完全模块化和结构化的语言。(5)语法限制不太严格,程序
6、设计自由度大。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-2 1-2 语言的特点语言的特点(6)允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可直接对硬件进行操作。兼有高级和低级语言的特点。(7)目标代码质量高,程序执行效率高。只比汇编程序生成的目标代码效率低10-20%。(8)程序可移植性好(与汇编语言比)。基本上不做修改就能用于各种型号的计算机和各种操作系统。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广
7、大科技专修学院07软件工程方弘 1-2 1-2 语言的特点语言的特点解释解释1 1:C+是由于开发大型应用软件的需要而产生的,并不是所有的人都要去编写大型软件;解释解释2 2:面向对象的基础是面向过程。C+是面向对象的语言,C是面向过程的,学起来比C语言困难得多,所以不太适合程序设计的初学者。问题:问题:既然有了面向对象的既然有了面向对象的C+C+语言,为语言,为什么还要学习什么还要学习C C语言?语言?C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-3 1-3 简单的简单的C C语言程序介绍语
8、言程序介绍#includevoidmain()printf(ThisisaCprogram.n);/*文件包含*/*主函数*/*函数体开始*/*输出语句*/*函数体结束*/说明:说明:说明:说明:main-主函数名,void-函数类型每个C程序必须有一个主函数main 是函数开始和结束的标志,不可省每个C语句以分号结束使用标准库函数时应在程序开头一行写:#include 说明:说明:本程序的作用是输出一行信息本程序的作用是输出一行信息:This is a C program.This is a C program.C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教
9、育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘例例1.2 求两数之和求两数之和#include void main()/*求两数之和*/int a,b,sum;/*声明,定义变量为整型*/*以下3行为C语句*/a=123;b=456;sum=a+b;printf(sum is%dn,sum);说明:说明:说明:说明:/*/表示注释。注释只是给人看的,对编译和运行不起作用。所以可以用汉字或英文字符表示,可以出现在一行中的最右侧,也可以单独成为一行。说明:说明:输出一行信息输出一行信息:sum is 579:sum is 579C C语言程序设计语言程序设计(第三版)(第三版)教育
10、改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘例例1.3 求求3个数中较大者。个数中较大者。#include void main()/*主函数*/int max(int x,int y);/对被调用函数max的声明*/int a,b,c;/*定义变量a、b、c*/scanf(d,d,&a,&b);/*输入变量a和b的值*/c=max(a,b);/*调用max函数,将得到的值赋给c*/printf(max=dn,c);/*输出c的值*/程序运行情况如下程序运行情况如下:8,5 8,5 (输入输入8 8和和5 5赋给赋给a a和和b)b)max=8 (ma
11、x=8 (输出输出c c的值的值)int max(int x,int y)int z;if (xy)z=x;else z=y;return(z);max(int x,int y);max(max(a a,b b););说明:说明:说明:说明:本程序包括main和被调用函数max两个函数。max函数的作用是将x和y中较大者的值赋给变量z。return语句将z的值返回给主调函数main。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-3 1-3 简单的简单的C C语言程序介绍语言程序介绍CC程序程序
12、:(1)C程序是由函数构成的。这使得程序容易实现模块化。(2)一个函数由两部分组成:函数的首部:例1.3中的max函数首部 int max(int x,int y)函数体:花括号内的部分。若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。函数体包括两部分:声明部分:int a,b,c;可缺省执行部分:由若干个语句组成。可缺省C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-3 1-3 简单的简单的C C语言程序介绍语言程序介绍注意:注意:函数的声明部分和执行部分都可缺省,例如:voidd
13、ump()这是一个空函数,什么也不做,但是合法的函数。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-3 1-3 简单的简单的C C语言程序介绍语言程序介绍小结小结:(3)C程序总是从main函数开始执行的,与main函数的位置无关。(4)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上,C程序没有行号。(5)每个语句和数据声明的最后必须有一个分号。(6)C语言本身没有输入输出语句。输入和输出的操作是由库函数scanf和printf等函数来完成的。C对输入输出实行“函数化”。C
14、 C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-4 1-4 运行程序的步骤和方法运行程序的步骤和方法一、运行程序的步骤运行程序的步骤上机输入与编辑源程序对源程序进行编译与库函数连接运行目标程序C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 1-4 1-4 运行程序的步骤和方法运行程序的步骤和方法二、上机二、上机运行程序的方法运行程序的方法l目前使用的大多数C编译系统都是集成环境(IDE)的。可以用不同的
15、编译系统对C程序进行操作l常用的有TurboC2.0、TurboC+3.0、VisualC+等lTurboC+3.0:是一个集成环境,它具有方便、直观和易用的界面,虽然它也是DOS环境下的集成环境,但是可以把启动TurboC+3.0集成环境的DOS执行文件tc.exe生成快捷方式,也可以用鼠标操作。lVisualC+:也可以用VisualC+对C程序进行编译。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘例:TurboC+3.0的使用将TurboC+3.0编译程序装入磁盘某一目录下,例如:放在C盘根
16、目录下一级TC3.0子目录下。(1)进入进入Turbo C+3.0集成环境集成环境在在DOS环境下环境下 C:TC3.0tc C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 在在在在WindowsWindows环境下环境下环境下环境下找到可执行文件tc.exe,执行该文件。主菜单:主菜单:1111个菜单项个菜单项:FileEditSearchRunCompileDebugProjectFileEditSearchRunCompileDebugProjectOptionsWindowHelpOptio
17、nsWindowHelpC C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘(2)(2)编辑源文件编辑源文件编辑源文件编辑源文件新建:新建:新建:新建:单击单击单击单击“File”File”菜单下菜单下菜单下菜单下 的的的的“New”,New”,修改:修改:选择选择“File”“OpenFile”“Open”(”(即单击即单击“File”File”的下的下拉菜单中的拉菜单中的“Open”Open”项,修改已有的源程序。项,修改已有的源程序。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励
18、志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘在编辑(EDIT)状态下光标表示当前进行编辑的位置,在此位置可以进行插入、删除或修改,直到自已满意为止。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘保存:在编辑(EDIT)状态下光标表示当前进行编辑的位置,在此位置可以进行插入、删除或修改,直到自已满意为止。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘(3)对源程序进行编译对源
19、程序进行编译选择“Compile”(或“Alt+F9”)对源程序进行编译。c1.cpp源程序,出现1个错误(error),0个警告(warming)。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘(4)将目标程序进行连接将目标程序进行连接选择菜单“Compile”“Link”,如果不出现错误,会得到一个后缀为.exe的可执行文件。(5)执行程序执行程序。选菜单“Run”“Run”(或按“Ctrl+F9”键)。(6)退出TurboC+3.0环境选择“File”“Quit”。C C语言程序设计语言程序设
20、计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘第二章第二章C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘l l 本章要点C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘l l 主要内容2.1 2.1 算法的概念算法的概念2.2 2.2 简单算法举例简单算法举例2.3 2.3 算法的特性算法的特性2.4 2.4 怎样表示一个算法怎样表示一个算
21、法2.5 2.5 化程序设计方法化程序设计方法 C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘一个程序应包括两个方面的内容:对数据的描述:数据结构(datastructure)对操作的描述:算法(algorithm)著名计算机科学家沃思提出一个公式:数据结构数据结构+算法算法=程序程序 数据结构算法程序设计方法语言工具数据结构算法程序设计方法语言工具完整的程序设计应该是:C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07
22、软件工程方弘 2.1 2.1 算法的概念算法的概念 广义地说,为解决一个问题而采取的方法和步骤,就称为“算法”。方法1:1+2,+3,+4,一直加到100加99次方法2:100+(1+99)+(2+98)+(49+51)+50=100+49100+50加51次对同一个问题,可有不同的解题方法和步骤例:求C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 2.1 2.1 算法的概念算法的概念 为了有效地进行解题,不仅需要保证算法正确,还要考虑算法的质量,选择合适的算法。希望方法简单,运算步骤少。计算机算法
23、可分为两大类别:数值运算算法:求数值解,例如求方程的根、求函数的定积分等。非数值运算:包括的面十分广泛,最常见的是用于事务管理领域,例如图书检索、人事管理、行车调度管理等。C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 2.2 2.2 简单算法举例简单算法举例例例2.1:求求12345步骤1:先求12,得到结果2步骤2:将步骤1得到的乘积2再乘以3,得到结果6步骤3:将6再乘以4,得24步骤4:将24再乘以5,得120如果要求如果要求121000121000,则要写,则要写999999个步骤个步骤C
24、 C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘S1:使p=1S2:使i=2S3:使pi,乘积仍放在变量p中,可表示为:pipS4:使i的值加1,即i+1i。S5:如果i不大于5,返回重新执行步骤S3以及其后的步骤S4和S5;否则,算法结束。最后得到p的值就是5!的值。可以设两个变量:可以设两个变量:一个变量代表被乘数,一个变量代表乘数。不另设变量存放乘积结果,而直接将每一步骤的乘积放在被乘数变量中。设p为被乘数,i为乘数。用循环算法来求结果,算法可改写:C C语言程序设计语言程序设计(第三版)(第三版
25、)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘S1:1pS2:3iS3:pipS4:i+2pS5:若i11,返回S3。否则,结束。如果题目改为:求1351000算法只需作很少的改动:C C语言程序设计语言程序设计(第三版)(第三版)教育改变命运,励志改变人生。教育改变命运,励志改变人生。珠海广大科技专修学院07软件工程方弘 用这种方法表示的算法具有通用性、灵活性。S3到S5组成一个循环,在实现算法时 要反复多次执行S3,S4,S5等步骤,直到某一时刻,执行S5步骤时经过判断,乘数i已超过规定的数值而不返回S3步骤为止。此时算法结束,变量p的值就是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 谭浩强 语言 入门
限制150内