C语言课件-第1章概述.ppt_第1页
C语言课件-第1章概述.ppt_第2页
C语言课件-第1章概述.ppt_第3页
C语言课件-第1章概述.ppt_第4页
C语言课件-第1章概述.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级语言程序设计 (C语言程序设计),相关介绍,教材:C语言程序设计(第二版)王曙燕等,教学方式:授课(44)+ 上机实验(20),考试类别:院考,参考教材:C语言程序设计,谭浩强,清华出版社 C语言程序设计,孟庆云,人民邮电出版社 C语言程序设计教程、实验与练习, 杨开成,人民邮电出版社,评分标准,成绩评定: 期末成绩70% + 平时成绩30%,平时成绩: 上机50% 作业30% 点名20%,第1章 概述,1.1 程序设计语言,什么是计算机? 什么是程序? 什么是程序设计语言?,计算机 计算机是一种具有内部存储能力、由程序自动控制的电子设备。,CPU,内存,存储器,外设,操作系统 (例如:Windows、Linux),应用软件 (例如:Office、MSN、QQ),计算机软件,计算机硬件,计算机组成,计算机硬件,程序 程序是可完成某一功能的,计算机能够识别并控制计算机执行的指令序列。程序要有目的性和可执行性。程序就其表现形式而言,是机器能够直接执行的、代码化的指令序列。 程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作的要求。 程序、规程、规则以及所需要的所有文档和数据就是所谓的计算机软件。,程序设计语言 用于书写计算机程序所使用的语言称为程序设计语言。它是由人工设计的语言,是人与计算机之间交互的工具,它的好坏不仅关系到书写程序是否方便易读,而且影响到程序的质量。 分为面向机器的低级语言和面向人的高级语言。低级语言包括机器语言和汇编语言。,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系,程序设计关键是定义类,并由类派生对象,程序语言的发展过程,1.机器语言 机器语言是以二进制代码形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。它的特点是运算速度快,每条指令均为0和1的代码串,指令代码包括操作码与操作对象。,2.汇编语言 用助记符来表示指令的操作码和操作对象的符号化语言,它便于编程人员识别与记忆,执行效率也较高。但用汇编编语言编写的程序不能由计算机直接执行,必须通过具有“翻译”功能的汇编程序,将这种符号化语言转换成相应的机器可执行代码,才能被执行。不同CPU的指令系统其相应的汇编语言不同。 如: 10000000 - ADD 10001000 - DEC,低级语言是面向机器的语言,机器执行效率高,程序逻辑代码量小。但与人们思考问题和描述问题的方法相距太远,使用繁琐、易出差错,要求使用者熟悉计算机内部细节,非专业的普通用户很难对它维护。 为了使人编程方便,程序设计语言朝着接近于人们熟悉、习惯的自然语言和数学语言描述的高级化方向发展,形成了各式各样、丰富多彩的各种程序设计高级语言。,3.高级语言 高级语言的出现是计算机编程语言的一大进步。它屏蔽了机器的细节,提高了语言的抽象层次,程序中可以采用具有一定含义的数据命名和容易理解的执行语句。这些接近于自然语言和数学语言的语句,易学、易用、易维护,且基本与机器无关,给编程带来了极大方便。 面向过程:Basic、Fortran、Pascal、C语言等。 非过程:Visual Basic、Java、C+、Delphi、Visual C+等。,高级语言编写的程序必须经过“翻译程序”翻译成机器语言程序方可执行。而且翻译过程复杂,翻译成的机器语言程序机器效率较低。 在各种高级语言中, C语言是机器效率最高的,它功能丰富,移植力强,编译质量高,故有时称之为中级语言或高级汇编语言。,1.2 C程序设计语言,C语言发展历史,1960 ALGOL 60语言,1963 CPL语言,1967 BCPL语言,1970 B语言,1972-1973 C语言,C语言版本 C语言在各种计算机上的快速推广导致出现了许多C语言版本。这些版本虽然是类似的,但通常是不兼容的。为了明确地定义与机器无关的C语言, 1983年美国国家标准化协会根据C语言问世以来各种版本对C的发展和扩充, 于1987年制定了新的标准, 称为ANSI C; 1990年,国际标准化组织 ISO 接受 87 ANSI C为ISO C的标准(ANSI/ISO 98991990)。目前广泛流行的C编译系统都是以它为基础的。 当今许多新的、重要的操作系统都是用C语言编写的, 许多其它系统软件和应用软件也都是用C语言编写的, C语言已成为风靡全球应用最广泛的几种计算机程序语言之一。,C语言的特点,1、简洁、紧凑、方便、灵活,2、运算符丰富,3、数据结构丰富,4、具有结构化的控制语句,5、语法不太严格,灵活性高,6、可与机器硬件打交道,直接访问内存地址, 兼有“高”、“低”级语言之功能,7、生成目标代码质量高,执行效率高,8、可移植性好,1.3 C语言的基本语法成分,字符集,英文字母:az 和 AZ,数字:09,特殊字符: 空格 !# % & * _ - + / | . , ? “ ( ) ,由字符集的字符可以构成C语言进一步的语法成份。,标识符,标识符只能由字母、数字和下划线组成,第一个字符必须是字母或下划线,标识符不能与系统中规定的保留关键字相同,命名变量尽量做到“见名知义”,区分大小写,sum, Sum, total_data, _MyCar, Bits32,12_year, date.day, $125, a+5,合法,非法,要求:,关键字,预定义标识符,用户标识符,32个关键字 auto break case char const do volatile continue default double if else for enum extern float goto int long while register return short signed sizeof static Struct switch typedef union unsigned void,系统标准库函数 scanf、printf、putchar、getchar、strcpy、 strcmp、sqrt等 编译预处理命令 include、define等,运算符,(1)单目运算符(仅对一个运算对象进行操作) ! + - -(取负号) (类型标识符) * & sizeof,(2)双目运算符(该运算符连接两个运算对象) + - * / % = = != & | & | = 复合赋值运算符,(3)三目运算符(该运算符连接三个运算对象) ? :,(4)其它 ( ) -,1.4 C语言程序组成简介,在屏幕上输出一行文字: Hello,everyone!,/* 例1.1 */ #include main( ) printf(“Hello,everyone!n“); ,运行结果:Hello,everyone!,求两数之和,#include /* This function calculates the sum of x and y */ int add(int x,int y) int z; z=x+y; return(z); /* This is the main program */ main() int a,b,sum; a=10; b=24; sum=add(a,b); printf(“sum= %dn“,sum); ,运行结果:sum=34,C语言组成 “#” 开始的编译预处理命令行(0到多行) 函数: 主函数main、标准库函数、自定义函数 主函数main: 完整的C程序必须有且仅有一个main函 数, 程序总是从main函数开始执行, 并在main函数中 结束, 可以没有其它函数。 标准库函数: C编译系统提供给用户共享使用的函数。每一种C编译系统都提供很多标准库函数(一般存放在头文件中)给用户调用, 但它并不是C语言的一部分, 不同的C系统提供的标准库函数不一定相同。 自定义函数: 编程者根据需要自己编制设计的函数。,函数组成 函数=函数首部+函数体 函数首部 函数体: 包含在内的部分 分为2部分: 声明部分 执行部分,/* This is a program */ #include int add(int x,int y) int z; z=x+y; main() int a,b,sum; a=10; b=24; sum=add(a,b); printf(”sum= %dn“,sum); ,说明:,1、声明部分、执行部分由语句组成,2、用“ ; ”作为语句终止符, 是语句不可缺少的一部分,3、用 表示函数体和复合语句的范围,4、大小写敏感, 关键字用小写字母,5、用 /* */ 为注释,不能嵌套;注释不产生编译代码,6、C语言没有输入输出语句,7、书写格式自由,C程序的书写,1、一行只放一条语句;,2、符号按对输入;,3、语句的输入按照缩进格式;,4、命名时做到“ 见名知义”;,5、有必要的注释;,6、有合适的空行。,优秀程序员的格式特点:,C程序从开发到执行的过程,链接程序,编译后产生的目标文件是可重定位的程序模块,不能直接运行。链接就是把目标文件和其他分别进行编译生成的目标程序模块(如果有的话)及系统提供的标准库函数链接在一起,生成可以运行的可执行文件的过程。链接过程使用C语言提供的链接程序(链接器)完成,生成的可执行文件存在磁盘中。,程序编译,编译是指将编辑好的源文件翻译成二进制目标代码的过程。编译过程是使用C语言提供的编译程序(编译器)完成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论