第1章 C语言程序设计概述

上传人:我*** 文档编号:137630538 上传时间:2020-07-10 格式:PPT 页数:53 大小:2.69MB
返回 下载 相关 举报
第1章 C语言程序设计概述_第1页
第1页 / 共53页
第1章 C语言程序设计概述_第2页
第2页 / 共53页
第1章 C语言程序设计概述_第3页
第3页 / 共53页
第1章 C语言程序设计概述_第4页
第4页 / 共53页
第1章 C语言程序设计概述_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《第1章 C语言程序设计概述》由会员分享,可在线阅读,更多相关《第1章 C语言程序设计概述(53页珍藏版)》请在金锄头文库上搜索。

1、主讲教师:郭永宁 E-MAIL: ,高级语言程序设计,2,预修课程:计算机一级 课程性质:专业必修基础课 周学时:5(理论授课)+ 2(上机实践) 教材: 黄翠兰等.高级语言程序设计(修订版).福建:厦门大学出版社,2009. 参考书: 谭浩强. C程序设计(第四版).北京:清华大学出版社,2010 .,3,程序设计语言是计算机学科领域中不可缺少的知识组成。ACM和IEEE/CS把计算机学科领域知识划分为九个主科目:算法与数据结构、计算机体系结构、人工智能与机器人学、数据库与信息检索、人机通信、数值与符号计算、操作系统、程序设计语言、软件方法学与工程。,4,课 程 目 标,掌握C语言的基本概念

2、、语法、句法。 熟悉Turbo C上机操作环境。 会阅读、会编写、会调试C程序。 学会进行常用算法的分析和设计。 初步的程序设计能力。,5,第1章 C语言程序设计概述,6,计算机发展史及发展方向,ENIAC,世界上第一台电子计算机ENIAC:它使用了18000个电子管,10000个电容,7000个电阻,功率150千瓦,占地170m2, 重量约30吨, 运算速度为每秒5000次加减运算。,第一台电子数字计算机ENIAC,7,计算机发展史及发展方向,IBM在1981年生产的第一台计算机IBM PC_XT,8,计算机发展史及发展方向,当今的个人计算机,9,计算机发展史及发展方向,Intel公司的三巨

3、头:巴瑞特、摩尔、葛洛夫,10,计算机发展史及发展方向,摩尔定律图表,11,计算机发展史及发展方向,小鬼当家:美国 Microsoft 公司的 前总裁Bill.Gates 与APPLE公司的 创始人乔布斯,12,计算机发展史及发展方向,DELL公司 创始人DELL,13,计算机发展史及发展方向,计算机发展方向: 巨型化:用于军事、科学计算 微型化:手持电脑 HPC 多媒体:声、图、文、动画、音频、视频 智能化:模拟人的功能,识别声音、文字、图像,各种语言互译,使计算机具有推力联想等功能。 网络化:使世界成为一体,无种族、无货币、无国界。,14,计算机发展史及发展方向,多种多样的计算机产品,15

4、,计算机发展史及发展方向,的大小与人的指甲一样大小,CPU,16,学计算机学什么,什么是“会计算机”? 会打字? 会编程? 会DIY? 会上网? 会“黑客”? 懂原理、能应用、有创新。,17,计算机科学的奠基人图灵 计算机行业的梦想:让计算机能像人一样地思考,与人自然交流。 AI (Artificial Intelligence,人工智能)能实现吗? 会有那么一天,人与计算机的位置互换吗? 计算机是用来延伸人的能力的工具,需要人来驾驭。我们的职责是让它更容易被驾驭。,18,计算机与人工智能,1997年,IBM公司研制的深蓝超级计算机在一场“人机大战”中打败了国际象棋大师卡斯帕罗夫。 被誉为“人

5、工智能的一大胜利” 深蓝的主要研制者之一许峰雄博士: “胜利靠的只是不知疲倦地高速运算,并不是什么智能 ”,19,人与计算机的对话,两个说不同母语的人的对话方式: 一方学另一方的语言 双方都学习一种第三方语言 人与计算机的对话方式: 计算机学习人的语言(自然语言) 人学习计算机的语言 学习第三方语言,20,常见的流行语言,应用编程语言: 机器语言 汇编语言 Basic Pascal C C+ Java C# 专项编程语言: Lotus Notes Power Builder,Web编程语言: HTML XML PHP ASP JSP JavaScript VBScript 其他: perl p

6、ython VBA,21,一 起 来 复 习,计算机硬件系统的组成:,冯.诺依曼结构:,硬件,运算器,控制器,内存储器,主机:,I/O设备:键盘、显示器等,外存储器,22,计算机基本工作过程,大脑,记忆装置,眼睛和耳朵,23,第一代语言:机器语言,计算1+1:,10111000 00000001 00000000 00000101 00000001 00000000,24,第二代语言:汇编语言(符号语言),数据传送,相 加,25,第三代语言:高级语言,PRINT 1+1,#include main() printf(%dn, 1+1); ,26,C语言的发展历程,CPLBCPL B C CPL

7、(Combined Programming Language),1963,英国剑桥 BCPL (Basic Combined Programming Language),1967,英国剑桥 B语言,1970,美国贝尔 C语言,1972,美国贝尔(D.Ritchie) 1973,K.Thompson与D.Ritchie合作,用C语言重写了UNIX,从而奠定了操作系统的地位。 1978年后,C先后被移植到大、中、小、微型机上。 1983年美国国家标准化协会(ANSI)根据C语言自问世以来的各种版本,对C语言的发展和扩充制定了新的标准,称为ANSI C。,27,由此看出,C语言最初是为描述和实现UN

8、IX操作系统而设计的,现在已成为一种成熟的通用编程语言,并被广泛应用于多种机型(如个人计算机、工作站和大型机)和操作系统(如DOS、Windows、Linux和UNIX)上。C语言既可以处理数据库、网络、图形、图像等,又适合在工业控制、自动检测等方面的应用。就目前来说,最主要的应用是在嵌入式软件的开发方面。,28,C语言的设计者Dennis M. Ritchie,29,Ritchie漫画像,C is quirky, flawed, and an enormous success.,30,Ritchie和Thompson在开发UNIX,31,和Unix的设计者Ken Thompson接受美国国家

9、技术勋章,32,语言的特点,(1)语言简洁、紧凑,使用方便、灵活。32个关键字(保留字)、9种控制语句,程序形式自由。 (2)运算符丰富 (34种表达式) 。 (3)数据类型丰富,具有现代语言的各种数据结构。(整型、实型、字符型、枚举型、指针类型、文件等,以及由上述类型构造的类型,如数组、结构体、共用体等) (4)具有结构化的控制语句,是完全模块化和结构化的语言。 (5)语法限制不太严格,程序设计自由度大。 (6)允许直接访问物理地址,能进行位操作,能实现汇编语言的大部分功能,可直接对硬件进行操作。兼有高级和低级语言的特点。 (7)目标代码质量高,程序执行效率高。只比汇编程序生成的目标代码效率

10、低1020。 (8)程序可移植性好(与汇编语言相比)。基本上不做修改就能用于各种型号的计算机和各种操作系统。,33,32个关键字:(由系统定义,不能重作其它定义) auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef unsigned union void volatile while,34,9种控制语句: if( )else

11、 for( ) while( ) dowhile( ) continue break switch goto return,35,1:C语言本身特点及应用。 2:C+是由于开发大型应用软件的需要而产生的,并不是所有的人都要去编写大型软件。 3:面向对象的基础是面向过程。C+是面向对象的语言,C是面向过程的, C+学起来比C语言困难得多;要完成底层的、占用资源少的程序,Java无能为力。 4、入门语言:为学习数据结构、C+/VC、JAVA等打基础。,问题:既然有了面向对象的C+、Java等语言,为什么 还要学习C语言?,36,简单的C语言程序介绍 例1:,#include void main(

12、) printf (This is a C program.n); ,/*预处理,文件包含*/ /*主函数 */ /*函数体开始*/ /*输出语句*/ /*函数体结束*/,说明: main-主函数名, void-函数类型 每个C程序必须有一个主函数main。 是函数开始和结束的标志,不可省。 每个C语句以分号结束。 使用标准库函数时应在程序开头一行写:#include ,说明: 本程序的作用是输出一行信息: This is a C program.,37,例2:求两数之和#include void main( ) /*求两数之和*/ int a,b,sum; /*声明,定义变量为整型*/ /*

13、以下3行为C语句 */ a=123; b=456; sum=a+b; printf(sum is %dn,sum);,说明: /*/表示注释。注释只是给人看的,对编译和运行不起作用。所以可以用汉字或英文字符表示,可以出现在一行中的最右侧,也可以单独成为一行,但不能嵌套,如 /*This is the main /* of example1.1*/ */,说明: 输出一行信息:sum is 579,38,例3(1):由键盘输入任意两个整数,输出其中较大的数。 #include void main( ) /*主函数*/ int a,b,c; /*声明部分,定义变量*/ printf(Please

14、input two numbers:n); /*输出提示信息*/ scanf(%d,%d, /*输出c的值*/ 程序运行情况如下: Please input two numbers: (输出提示信息) 8,5 (输入8和5赋给a和b) max=8 (输出c的值),39,例3(2):#include void main( ) /* 主函数*/ int a, b, c; /*定义变量a、b、c */ scanf(d,d, /*输出c的值*/,程序运行情况如下: 8,5 (输入8和5赋给a和b) max=8 (输出c的值),int max(int x, int y) int z; if (xy) z

15、=x; else z=y; return z; ,说明:本程序包括main和被调用函数max两个函数。max函数的作用是将x和y中较大者的值赋给变量z。return语句将z的值返回给主调函数main。,40,(1)C程序是由函数构成的。这使得程序容易实现模块化。 (2)一个函数由两部分组成: 函数的首部:如max函数首部int max(int x,int y ) 函数体:花括号内的部分。若一个函数有多个花括号,则最外层的一对花括号为函数体的范围。 函数体包括两部分: 声明部分:int a,b,c; (可缺省) 执行部分:由若干个语句组成。(可缺省) 例: void dump( ) 这是一个空函

16、数,什么也不做,但却是合法的函数。,41,(3) C程序总是从main函数开始执行的,与main函数的位置无关。 (4) C程序书写格式自由,一行内可以写几个语句, 一个语句可以分写在多行上,C程序没有行号,可使用空行和空格,常用锯齿形书写格式。习惯用小写字母,对大小写敏感。 (5) 每个语句和数据声明的最后必须有一个分号。 (6) C语言本身没有输入输出语句。输入和输出的操作是由库函数scanf和printf等函数来完成的。C对输入输出实行“函数化”。,42,从键盘上输入三个数,求出这三个数的最大数。 思路:输入三个数num1、num2、num3之后, 先求出三个数中两个数num1和num2的较大数max2,再把这个较大数max2与第三个数num3比较,求出最大数max3。,思 考,43,# include /*Cprog1.C By Zhao Shaoka*

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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