C程序设计1C语言概述.ppt_第1页
C程序设计1C语言概述.ppt_第2页
C程序设计1C语言概述.ppt_第3页
C程序设计1C语言概述.ppt_第4页
C程序设计1C语言概述.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

第1章 C语言概述,机电学院,C 程序设计,2019/8/4,2,第一章 C语言概述,2019/8/4,3,1.1 C语言发展历史 程序设计语言的发展,CPU指令系统,由0、1序列构成的指令码组成 如:10000000 加 10010000 减,用助记符号描述的指令系统 如 ADD A, B,面向机器的语言,程序设计是数据被加工的过程,客观世界可以分类,对象是类的实例 对象是数据和方法的封装 对象间通过发送和接受消息发生联系,程序设计关键是定义类,并由类派生对象,以更接近于人们的自然语言和数学公式编写程序的语言,2019/8/4,4,程序设计语言的发展,2019/8/4,5,C语言出现的历史背景,C语言是国际上流行的、很有发展前途的计算机高级语言。C语言适合于作为“系统描述语言”。它既可以用来编写系统软件,也可以用来编写应用程序。,2019/8/4,6,C语言的产生和发展与UNIX操作系统分不开。操作系统的编写需要即具有高级语言的优点,又具有低级语言的特点的语言。C语言是由B语言发展而来,而B语言是由A语言发展而来。 A语言指高级语言Algol60,离硬件比较远,不宜用来编写系统软件。在此基础上产生了更接近硬件的B语言,并用B语言编写了第一个UNIX操作系统。1973年在B语言基础上设计出了C语言,既保留了B语言的精炼、接近硬件的优点,又克服了B语言过于简单、无数据类型等缺点。由C语言改写的UNIX操作系统获得了巨大的成功,日益普及,同时C语言也迅速得到推广普及。,C语言出现的历史背景,2019/8/4,7,Ada,ALGOL60,ALGOL68,Pascal,Modula-2,CPL,BCPL,B,C,C+,Java,LISP,PROLOG,COBOL,FORTRAN77,FORTRAN,PL/1,Simula 67,Smalltalk 80,BASIC,ANSI-BASIC,QBASIC,VB,FORTRAN90,2019/8/4,8,ALGOL60 - CPL - BCPC - B - C - 标准C - ANSI C - ISO C ALGOL60:一种面向问题的高级语言。ALGOL60离硬件较远,不适合编写系统程序。 CPL(Combined Programming language,组合编程语言):CPL是一种在ALGOL60基础上更接近硬件的一种语言。CPL规模大,实现困难。 BCPL(Basic Combined Programming language,基本的组合编程语言):BCPL是对CPL进行简化后的一种语言。 B语言:是对BCPL进一步简化所得到的一种很简单接近硬件的语言。B语言取BCPL语言的第一个字母。B语言精练、接近硬件,但过于简单,数据无类型。B语言诞生后,Unix开始用B语言改写。 C语言:是在B语言基础上增加数据类型而设计出的一种语言。C语言取BCPL的第二个字母。C语言诞生后,Unix很快用C语言改写,并被移植到其它计算机系统。 标准C 、ANSI C、ISO C:C语言的标准化。,C语言的产生,2019/8/4,9,发展过程,C语言的产生,2019/8/4,10,1978年C语言普及以后,先后被移植到大、中、小、微型机上,风靡世界。 1978年Brian W.Kernighan和Dnnis M.Ritchie合著了The C Programming Language一书,成为后来广泛使用的C语言基础,成为标准C。 1983年美国国家标准化协会(ANSI)重新制定了新的标准,成为ANSI C。 1987年ANSI公布新标准87 ANSI C。 1988年K&R根据ANSI C标准修改著作。 1990年国际标准化组织(ISO)接受87 ANSI C为ISO C标准。 目前,在微机上广泛使用的语言编译系统有Microsoft C、Turbo C 、Borland C等。,C语言的发展,2019/8/4,11,语言简洁、紧凑,使用方便、灵活。C语言只有32个关键字,程序书写形式自由。 运算符丰富。 数据结构丰富,具有现代化语言的各种数据结构。 具有结构化的控制语句。 语法限制不太严格,程序设计自由度大。 C语言允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作。 生成目标代码质量高,程序执行效率高。 用C语言写的程序可移植性好(与汇编语言比)。,1.2 C语言的特点,2019/8/4,12,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,2019/8/4,13,9种控制语句: if( )else for( ) while( ) dowhile( ) continue break switch goto return,2019/8/4,14,例 C语言与Pascal语言比较 C语言 Pascal语言 含义 BEGIN.END 复合语句 if(e) s; IF(e) THEN s 条件语句 int i ; VAR i:INTEGER 定义i为整型变量 int a10; VAR a:ARRAY110 OF INTEGER 定义整型数组a int f(); FUNCTION f():INTEGER 定义f为返值整型的函数 int *p; VAR p:INTEGER 定义p为指向整型变量的指针 i+= 2; i=i+2 赋值i+2i i+,+i; i=i+1 i自增值 结论:C比 Pascal简练,源程序短。,2019/8/4,15,34种运算符: 算术运算符:+ - * / % + - 关系运算符: = != 逻辑运算符:! & | 位运算符 : | & 赋值运算符:= 及其扩展 条件运算符:?: 逗号运算符:, 指针运算符:* & 求字节数 :sizeof 强制类型转换:(类型) 分量运算符:. - 下标运算符: 其它 :( ) -,2019/8/4,16,2019/8/4,17,1.3 简单的C程序介绍,/* example1.1 The first C Program*/ #include main() printf(“This is a C program.n”); ,输出: This is a C program.,例1.1 输出一行信息:This is a C program.,双引号内的字符串按原样输出,“n”是换行符,例1.1,2019/8/4,18,#include main() /* 计算两数之和 */ int a,b,sum; /* 这是定义变量 */ a=123;b=456; /* 以下3行为C语句 */ sum=a+b; printf(“sum is %dn“,sum); ,例1.2 计算两数之和,并输出结果。,运行结果: sum is 579,例1.2,2019/8/4,19,#include main() /* 主函数 */ int a,b,c; /* 声明部分,定义变量 */ scanf(“ %d , %d ” , /*将z的值返回,通过max带回调用处*/ ,例1.3,例1.3,2019/8/4,20,我们对C语言程序的基本组成和形式(程序结构)有了一个初步了解: 1.C程序由函数构成(C是函数式的语言,函数是C程序的基本单位) 一个C源程序至少包含一个main函数,也可以包含一个main函数和若干个其它函数。函数是C程序的基本单位。 被调用的函数可以是系统提供的库函数,也可以是用户根据需要自己编写设计的函数。C是函数式的语言,程序的全部工作都是由各个函数完成。编写C程序就是编写一个个函数。 C函数库非常丰富,ANSI C提供100多个库函数,Turbo C提供300多个库函数,2019/8/4,21,2.main函数(主函数)是每个程序执行的起始点 3.一个函数由函数首部和函数体两部分组成 (1)函数首部:一个函数的第一行。 返回值类型 函数名(函数参数类型1 函数参数名1,函数参数类型2,函数参数名2) 注意:函数可以没有参数,但是后面的一对()不能省略,这是格式的规定。 (2)函数体:函数首部下用一对括起来的部分。如果函数体内有多个,最外层是函数体的范围。函数体一般包括声明部分、执行部分两部分。 声明部分:在这部分定义本函数所使用的变量。 执行部分:由若干条语句组成命令序列(可以在其中调用其它函数)。 ,2019/8/4,22,4.C程序书写格式自由 一行可以写几个语句,一个语句也可以写在多行上。 C程序没有行号,也没有FORTRAN,COBOL那样严格规定书写格式(语句必须从某一列开始)。 每条语句的最后必须有一个分号“;”表示语句的结束 5.可以使用/* */对C程序中的任何部分作注释 注释可以提高程序可读性 不能嵌套 不产生编译代码 6.C语言本身不提供输入/输出语句,输入/输出的操作是通过调用库函数(scanf,printf)完成。,2019/8/4,23,格式特点 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式,main( ) . . . . ,main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); ,优秀程序员的素质之一: 使用TAB缩进 对齐 有足够的注释 有合适的空行,2019/8/4,24,1.4 C程序的上机步骤 C程序开发步骤,file.exe,程序代码的录入, 生成源程序*.c,语法分析查错,翻译 生成目标程序*.obj,与其它目标程序或库 链接装配,生成可执行 程序*.exe,2019/8/4,25,C程序的执行过程,1源程序文件的建立和编辑 编写源程序,形成 .C文件 需用编辑工具:tc.exe、记事本 2编译 编译源程序,形成目标程序 . Obj文件 需用编译工具 :tcc.exe 3连接 连接OBJ文件和调用的库函数,形成运行程序 .exe 文件 需用连接工具 :tlink.exe 4运行 .exe 文件,Turbo C提供 集成化开发环境,2019/8/4,26,Turbo C集成开发环境 配置要求 UNIX,PC-DOS,MS-DOS,UCDOS操作系统 硬盘容量约2M,448K RAM运行空间 安装Turbo C 创建子目录 Install 若不是可安装盘,将文件拷贝到对应的目录下,2019/8/4,27,进入Turbo C D:TCTC.exe 退出Turbo C Alt +x Alt+F ,Q 帮助Help F1,Turbo C集成开发环境,2019/8/4,28,基本操作: F10-调用主菜单 F2-存盘 F3-打开 Alt+F9-Compile Ctrl+F9-Run Alt+F5-User Screen,常用热键,文本编辑: -移动光标 PgUp,PgDn-上下翻页 Ctrl+PgUp,Ctrl+PgDn-文件首尾 Home End Ddelete Insert Bkspace,块操作: Ctrl+KB

温馨提示

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

最新文档

评论

0/150

提交评论