1、 北京理工大学计算机学院北京理工大学计算机学院5/23/20221李 书 涛 北京理工大学计算机学院北京理工大学计算机学院整 体 概 述THE FIRST PART OF THE OVERALL OVERVIEW, P L E A S E S U M M A R I Z E T H E C O N T E N T第一部分 北京理工大学计算机学院北京理工大学计算机学院5/23/202231 C语言概述 2 C语言的程序结构 3 Turbo C的集成环境4 本章小结第二章 C语言程序设计概述 北京理工大学计算机学院北京理工大学计算机学院5/23/20224C语言概述 一、 什么是计算机语言 现代科
2、学的迅猛发展使电子计算机几乎进入了人类生活的各个领域,计算机成为人类必不可少的有力助手。众所周知,计算机内部采用二进制工作,目前人和计算机还不能像人和人之间那样完全用自然语言进行交流,计算机和人之间的交流需借助于“计算机语言”。 计算机语言是按照一定的规则而编制的,是人和计算机都能理解的语言。计算机语言是人们用来编写程序、制作软件的工具。 北京理工大学计算机学院北京理工大学计算机学院5/23/20225 二、如何学习计算机语言p学软件与学语言的区别?l 软件由语言编制而成,是解决某类问题, 具有确定的、有限的功能。l 语言由确定的规则组成,可构造解决各 种问题的软件。 学语言: :学规则、学方
3、法、学设计、学应用。 学软件: :学思想、学功能、学操作。 北京理工大学计算机学院北京理工大学计算机学院5/23/20226各种符号及其组合所出现的行为来源,使用和影响计算机语言的 北京理工大学计算机学院北京理工大学计算机学院5/23/20227 三、计算机语言的发展1. 机器语言 用二进制数表示指令 例如:1000 1010 1101 0000 就是一条Intel的机器指令,其功能是:将累加器的低8位传送到数据寄存器的低8位。即把寄存器AL中内容移入到寄存器DL中。 由0和1组成的指令序列(程序)称为机器代码,计算机直接用机器代码工作速度快、效率高,但是人们很难记忆和理解这些机器代码,有时不
4、得不依靠八进制和十六进制码来帮助记忆。例如,上面16位二进制数可以用4位十六进制码(8AD0)H来表示。 北京理工大学计算机学院北京理工大学计算机学院5/23/20228用机器语言写的程序称为机器语言 这种完全由0和1组成的二进制信息称为机器语言。这种语言不仅难学难记而且没有通用性,不同型号的计算机机器语言完全不同。 机器语言的特点:计算机唯一能直接执行。 但它难懂、难记、难写、难检查、难修改,没有实用价值。 北京理工大学计算机学院北京理工大学计算机学院5/23/20229 2. 汇编语言 鉴于机器语言的缺陷,人们发展了汇编语言,并采用一些助记符来代替机器代码。例如,上面指令可表示为“MOV
5、DL,AL”,但汇编语言仍保留着机器语言的弊病,没有摆脱具体机器的依赖性,因此称为面向机器的语言。“ 1000 1010 1101 0000 ” 与 “MOV DL,AL”等效 机器语言 汇编语言用助记符表示指令 北京理工大学计算机学院北京理工大学计算机学院5/23/202210计算机能直接执行汇编源程序吗?用汇编语言编写的程序称为汇编目标程序源程序汇编语言不能汇编源程序的执行过程:结果 汇编语言的特点:结构紧凑,执行效率高,有实用价值。 北京理工大学计算机学院北京理工大学计算机学院5/23/2022113. 高级语言特点面向过程。编程要解决两个问题做什么?怎样做? 随着计算机的发展,急需要解
6、决的是计算机硬件的高速度和程序编制的低效率之间的矛盾,在50年代末期出现了“高级程序设计语言”,它较为接近自然语言,具有易学易懂的特点。更重要的是,它是面向用户的语言,当学会了一种高级语言后,在各种类型的计算机上都能使用(但也略有差异)。用近似自然语言的语句编写程序高级语言 自从高级语言问世以来,出现过上千种程序设计语言,通常可以分为通用型和专用型两大类。具体划分为: 通用型语言:适合于数值计算的语言(例如ALGOL-60语言、FORTRAN语言);结构化程序设计语言(例如Pascal语言、C语言);适合商用和管理领域的语言(例如COBOL、FoxBASE、FOXPRO语言),还有一些交互式的
7、通用语言(例如BASIC语言)。 专用型语言:种类多、功能各异。如适合数控机床工作的数控语言APL,适用于计算机辅助设计的AHPL和DDL语言,适合符号处理的LISP语言,适合于人工智能的LISP、PROLOG语言,适合于系统分析的PSL/PSA语言等。 汇集性语言:它综合各类语言特点、功能强大,适用范围较广,如ADA和PL/I语言。用高级语言写的程序称为高级语言源程序目标程序源程序高级语言机器语言高级语言 常用的高级语言有:BASIC 、FORTRAN(公式翻译)、 ALGOL(算法语言)、COBOL、Pascal、C、PL/、 LISP、 PROLOG 、 Ada 、 APL等等。 BAS
8、IC (初学者通用符号指令代码) 面对这么多的高级语言,要全面掌握它是不可能的。事实上在实际计算机应用中常用的语言才十几种,初学者应以一种语言为模板,深入学习和应用,掌握该语言的基础、结构及编程等技术,这样才能为学习其他高级语言打下基础。 北京理工大学计算机学院北京理工大学计算机学院5/23/2022144. 第四代语言特点非过程化。编程只要解决一个问题做什么? 常用的第四代语言有:DBMSDBMS(数据库管理系统)。 如:FoxPro、Oracle、INFORMIX、SYBASE等等。 5. 第五代语言特点人工智能语言。可自动编写程序。例如:LIST正在研制发展中。面向问题的语言四、计算机语
9、言分类p 面向过程语言p 面向对象语言FORTRANBASICCPASCALCOBOLLISPC+Turbo PASCALVisual BASICVisual C+Visual FoxPro 系统软件设计具有图形功能科学计算商用人工智能 北京理工大学计算机学院北京理工大学计算机学院5/23/202216五、C语言特点1. C语言吸取了汇编语言的精华 汇编语言是一种面向机器的语言,尽管它编程麻烦,但目标程序质量高,运行快,有很强的生命力。1) C语言提供了对位、字节以及地址的操作,使程序可以直接对内存、指定寄存器进行操作;2) C语言吸取了宏汇编技术中的一些灵活处理方式,提供宏代换#define
10、和文件蕴含的预处理命令#include;3) C语言能方便地与汇编程序相连接,C语言中引用汇编程序与引用函数一样方便。 北京理工大学计算机学院北京理工大学计算机学院5/23/202217 2. C语言继承和发扬了高级语言的长处1) 继承了PASCAL语言具有丰富数据类型的特点,具有完备的数据结构,并可以用 把一串语句括起来作为复合句(分程序)来处理;2) 吸取了FORTRAN语言中模块结构的思想,C语言中每个函数都是独立的,允许单独进行编译。这有利于大程序的分工编程和调试工作;3) 允许递归调用,由于采用递归使有些算法的实现简明、清晰。 北京理工大学计算机学院北京理工大学计算机学院5/23/2
11、02218 3. C语言规模适中,语言简洁 编译生成的目标代码质量高,执行效率高,一般只比汇编程序生成的目标代码效率仅仅低10%20%,但C语言编程速度快,程序可读性好,易于调试和修改。 北京理工大学计算机学院北京理工大学计算机学院5/23/202219 4. C语言可移植性好 统计资料表明,C编译程序的80%以上是公共代码,因此稍加修改就能移植到各种不同的计算机上。C语言的优点很多,但也有不足之处运算符优先级太多不便记忆,有些与常规约定有所不同;数据类型转换比较灵活,类型检验能力弱,不够安全;编程自由度大,给不熟练的程序员带来一定困难。C语言特点小结x=(ab)?a:b;if(ab) x=a
12、;else x=b; 7. 程序运行效率高,易读性、可移植性好 8. C的语法检查不严格 北京理工大学计算机学院北京理工大学计算机学院5/23/202221源程序解释程序边解释边执行结果用户解释方式编译方式计算机语言程序的两种执行方式用户目标程序源程序执行程序库文件连接程序编译程序编辑程序错误信息结 果编译连 接编辑.c.obj.exe运行 北京理工大学计算机学院北京理工大学计算机学院5/23/202222一. . C语言程序结构main( ) 程序首部 说明语句 数据结构 语句 输入语句 执行语句 运算处理 算法设计 输出语句 北京理工大学计算机学院北京理工大学计算机学院5/23/20222
13、3main( ) 程序首部 说明语句 数据结构 输入数据 运算处理 算法设计 输出结果程序举例/* file:simple.c * sum=a+b+c 注释语句 */main( ) 程序首部 int a,b,c,sum; 说明语句 a=1;b=2; 赋值语句 scanf(“%d”,&c); 输入语句 sum=a+b+c; 运算处理 printf(“sum=%dn”,sum); 输出语句 执行语句:求 sum=a+b+c 北京理工大学计算机学院北京理工大学计算机学院5/23/202225/* * C program * */ main( ) int a,b,c; scanf(“ %d,%d”,&
14、a,&b); if (ab) c=a; else c=b; printf(“max=%d”,c); 例题:从a, b两个数中找出最大数/* *定义变量* */* *输入a和b的值* */* *求最大数* */* *输出c的值* */* *注释* */* *程序首部* */ 北京理工大学计算机学院北京理工大学计算机学院5/23/202226C程序的基本组成1. 基本字符集l 数 字:0 1 2 3 4 5 6 7 8 9l 字 母:a b c z A B C Zl 运 算 符:+ - * / % = = != = & | & | ( ) - . ! ? : , ; “ l 特殊符号:_(下划线)
15、 回车(r) 换行(n) 制表符(t) 北京理工大学计算机学院北京理工大学计算机学院5/23/2022272. 标识符标识符内容:量名、变量名、 数组名、类型名、存储方式名、语句、函数名、文件名等。a标识符规则:字母或下划线开头,后面是字母、下划线或数字组成的字符串,要求见名知意。call_n test39 _string1 abccall.n 39test -string1 c2.0量、变量、数组、类型、存储方式、语句、函数 、文件。合法非法 北京理工大学计算机学院北京理工大学计算机学院5/23/202228标识符说明 (1) 在C语言中, 标识符中大小写字母是有区别的。程序中基本上都采用小
16、写字母表示各种标识符,如变量名、数组名、函数名等。书写的各种语句也均用小写字母,而大写字母只用来定义宏名等,用的不多。 (2) 不同的系统对标识符的长度有不同的要求, 有的要求为6个字符,有的允许使用8个字符,而Turbo C系统下的有效长度为1至32个字符。 (3) 除了少数工作单元用单个字符作标识符外,一般的应做到见名知意,以提高程序的可读性。如用sum表示和,score表示成绩, max表示最大等等。 北京理工大学计算机学院北京理工大学计算机学院5/23/2022293. 关键字auto break case char constcontinue default do double el
17、seenum extern float for gotoif int long register returnshort signed sizeof static structswitch typedef union unsigned voidvolatile while标识符或由C系统定义 北京理工大学计算机学院北京理工大学计算机学院5/23/202230一. . C语言程序的执行方式编译方式用户目标程序源程序执行程序库文件连接程序编译程序编辑程序错误信息结 果编译连 接编辑.c.obj.exe运行C 程序的上机执行过程 北京理工大学计算机学院北京理工大学计算机学院5/23/202232 英
18、文字母(大、小写 数字 09 特殊字符:$、#、& 、!、%、(、)、_文件名=主文件名. .文件扩展名主名与扩展名可以使用的字符 外存上众多的文件以文件名区分 (1) 文件名的组成附: 文件名 北京理工大学计算机学院北京理工大学计算机学院5/23/202233二进制代码.COM DOS命令文件.EXE 可执行程序.OBJ 目标文件.SYS 系统文件.BAT 批处理文件.TXT 文本文件.BAK 备份文件.LIB 库文件.C C语言程序扩展名代表文件的类型.doc Word文档.txt 纯文本文件.ppt 电子幻灯演示文稿.bmp 位图文件不同类型的文件用不同的图标表示(2) 文件扩展名的规定
19、 北京理工大学计算机学院北京理工大学计算机学院5/23/202234 1. Turbo C的安装 在D上建一文件夹,命名tc; 将系统拷入tc文件夹; 单击“开始” “运行” “打开”执行下述命令: d:tcarj x * *.* * 单击“确定”2. Turbo C的启动 进入tc,双击tc.exe 北京理工大学计算机学院北京理工大学计算机学院5/23/202236信息区编辑区菜单区版本信息功能键1. Turbo C的主界面 北京理工大学计算机学院北京理工大学计算机学院5/23/202237当前光标所在行、列插入状态缩进状态文件名(1) 编辑区 北京理工大学计算机学院北京理工大学计算机学院5
20、/23/202238文件编辑运行共有八项编译工程管理选项调试断点用F10激活主菜单用、确定选项打开下级菜单(2) 主菜单 北京理工大学计算机学院北京理工大学计算机学院5/23/202239文件:共九项选项装入一个文件,输入文件名可以是新文件,也可以是已有文件建立一个新文件,缺省名NONAME.C 文件管理 北京理工大学计算机学院北京理工大学计算机学院5/23/202240从最近使用过的文件中挑选文件(提供8个)将缺省文件名保存为.Pick 、 Save 、 Write to 北京理工大学计算机学院北京理工大学计算机学院5/23/202241显示指定路径下的文件定义新的路径Directory 、
21、Change dir 北京理工大学计算机学院北京理工大学计算机学院5/23/202242暂退到DOS界面按EXIT返回进入DOS界面退出TC进入编辑窗口用ALT+菜单命令项的第一个字母也可以选择菜单项Os shell 、 Quit 北京理工大学计算机学院北京理工大学计算机学院5/23/202243* 编译:语法检查* 连接:与库函数连接* 生成执行文件prog1.cprog1.objprog1.exe 运行:Run编译菜单编译状态错误信息提示 编译:Compile to OBJ连接窗口错误信息2. 错误信息选项 路径改变输出路径3. 改变输出路径 北京理工大学计算机学院北京理工大学计算机学院5
22、/23/2022471. 进入TC目录,键入TC2. 按F10,激活主菜单4. 进入编辑区,录入源程序3. 主菜单中选“File”,下级菜单中选“Load”输入文件名(缺省扩展名为.C)5. 在“File”下级菜单中选“Save”存盘用ALT+菜单命令项的第一个字母三. . 上机步骤 北京理工大学计算机学院北京理工大学计算机学院5/23/2022486. 主菜单中,选“Run” 系统自动进行编译(改错)连接(改错) 运行在DOS下显示结果返回TC用ALT+F5可以返回DOS界面查看运行结果演示自动编译( (改错) )连接( (改错) )运行可用Ctrl+F9直接运行 北京理工大学计算机学院北京
23、理工大学计算机学院5/23/202249 北京理工大学计算机学院北京理工大学计算机学院提问与解答环节Questions and answers 北京理工大学计算机学院北京理工大学计算机学院感谢参与本课程,也感激大家对我们工作的支持与积极的参与。课程后会发放课程满意度评估表,如果对我们课程或者工作有什么建议和意见,也请写在上边结束语 北京理工大学计算机学院北京理工大学计算机学院感谢聆听The user can demonstrate on a projector or computer, or print the presentation and make it into a film讲师:XXXX日期:20XX.X月
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。