收藏 分销(赏)

C语言程序设计chapter.pptx

上传人:人****来 文档编号:4610163 上传时间:2024-10-07 格式:PPTX 页数:31 大小:125.39KB
下载 相关 举报
C语言程序设计chapter.pptx_第1页
第1页 / 共31页
C语言程序设计chapter.pptx_第2页
第2页 / 共31页
C语言程序设计chapter.pptx_第3页
第3页 / 共31页
C语言程序设计chapter.pptx_第4页
第4页 / 共31页
C语言程序设计chapter.pptx_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、C C语言概述:语言概述:1.C1.C语言的发展简史语言的发展简史 2.C2.C语言简单程序介绍语言简单程序介绍第第 1 1 章章 语语 言言 概概 述述1.1 C C语言的发展简史语言的发展简史一、一、何为何为计算机语言计算机语言?人与计算机交流的工具。人与计算机交流的工具。计算机每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用计算机语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。二二、计算机语言经历了四代发展、计算机语言经历了四代发展:第一代:第一代:第一代:第一代:机器语言机器语言。计算机所能识

2、别的唯一语言,由计算机所能识别的唯一语言,由二二 进制进制0、1构构成的面向特定机器的低级语言。成的面向特定机器的低级语言。优点:优点:计算机可以直接执行。计算机可以直接执行。缺点:缺点:编程者难以记忆和识别。编程者难以记忆和识别。第二代第二代第二代第二代:汇编语言。汇编语言。又称符号语言又称符号语言,对机器指令进行简单的符号化。对机器指令进行简单的符号化。优点:优点:源程序经汇编生成的可执行文件比较小,执行速度很快。源程序经汇编生成的可执行文件比较小,执行速度很快。缺点:缺点:1)1)汇编源程序比较冗长、复杂、容易出错。汇编源程序比较冗长、复杂、容易出错。2)2)使用汇编语言编程需要有更多的

3、计算机专业知识。使用汇编语言编程需要有更多的计算机专业知识。3)3)依赖于计算机硬件,可读性可移植性比较差依赖于计算机硬件,可读性可移植性比较差。汇编语言程序汇编语言程序 机器语言程序机器语言程序 汇编程序汇编程序第三代第三代:高级语言高级语言。完全接近人类习惯,各种机器指令用英文完全接近人类习惯,各种机器指令用英文 单词表示。如:单词表示。如:BASIC,FORTRAN,C,PASCAL等。等。高级语言程序高级语言程序 机器语言程序机器语言程序解释解释/编译程序编译程序解释程序解释程序执行方式类似于执行方式类似于“同声翻译同声翻译”,应用程序源代码一边由相应语言的解释器,应用程序源代码一边由

4、相应语言的解释器“翻译翻译”成目标成目标代码代码(机器语言机器语言),一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应,一边执行,因此效率比较低,而且不能生成可独立执行的可执行文件,应用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。用程序不能脱离其解释器,但这种方式比较灵活,可以动态地调整、修改应用程序。编译程序编译程序 编译是指在应用源程序执行之前,就将程序源代码编译是指在应用源程序执行之前,就将程序源代码“翻译翻译”成目标代码成目标代码(机器语言机器语言),因此其,因此其目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要

5、修目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高。但应用程序一旦需要修改,必须先修改源代码,再重新编译生成新的目标文件改,必须先修改源代码,再重新编译生成新的目标文件(.OBJ)才能执行,只有目标文件才能执行,只有目标文件而没有源代码,修改很不方便。而没有源代码,修改很不方便。第四代:第四代:甚高级语言,是一种面向对象或面向问题的高级语言。甚高级语言,是一种面向对象或面向问题的高级语言。如:如:Visual Basic,简称简称VB。Visual C+,简称简称VC 1980年年 贝尔实验室贝尔实验室 Bjame Stroustrup 开始对开始对C语言进行改进和扩充,语言进行改进

6、和扩充,解决对开发大型程序的复杂性管理问题解决对开发大型程序的复杂性管理问题;1983年正式齐名为年正式齐名为C+.1994年制定了年制定了ANSI C+标准的草案标准的草案。1998年年 Microsoft 公司推出基于公司推出基于 Windows 98 操作平台的编程工具操作平台的编程工具 Visual C+,图形化用户界面,面向对象的程序开发,网络应用等功能。图形化用户界面,面向对象的程序开发,网络应用等功能。三、语言的诞生与发展三、语言的诞生与发展语言是贝尔实验室于语言是贝尔实验室于7070年代初研制出来的,后来年代初研制出来的,后来又被多次改进,并出现了多种版本又被多次改进,并出现了

7、多种版本(1 1)C C语言诞生的背景语言诞生的背景 汇编语言程序依赖于计算机硬件,其可读性和可移汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势)。件的直接操作(这正是汇编语言的优势)。于是人们盼望有一种于是人们盼望有一种兼有兼有汇编语言汇编语言和和高级语言高级语言特性特性的新语言。的新语言。(2 2)C C 语言的发展历程语言的发展历程 7373年年 贝尔实验室贝尔实验室 D.M.Ritchie设计出设计出C语言,用语言,用C C改写改写 UNIX UNIX 内核内

8、核,生成生成 UNIX UNIX 第五版第五版 7777年年 出现不依赖于具体机器的出现不依赖于具体机器的 C 语言编译文本语言编译文本(推动(推动UNIXUNIX系统在各种机器实现)系统在各种机器实现)8080年代初年代初,美国国家标准化协会,美国国家标准化协会(ANSI),根据,根据语言问世以来各种版本对语言的发展和扩充,制语言问世以来各种版本对语言的发展和扩充,制定了定了ANSI C 标准标准 19871987年年 ANSIANSI公布公布C C新标准新标准 87 87 ANSI C 19901990年年 ISO(国际标准化组织国际标准化组织)接受上述接受上述 87 87 ANSI C标

9、准,作为标准,作为ISO的的 C 标准标准 3 3)目前,在微机上广泛使用的语言编译系统有:)目前,在微机上广泛使用的语言编译系统有:Microsoft C、Turbo C、Borland C 等。等。使用时请参阅相应的手册,注意它们编译系统的特点和使用时请参阅相应的手册,注意它们编译系统的特点和规定的差异。规定的差异。本课选定的上机环境是本课选定的上机环境是Microsoft C(WindowsWindows操作系统)操作系统)。四、四、C C语言的特点语言的特点 (1 1)语言简洁、紧凑,使用方便、灵活。程序书写形式自由。共有语言简洁、紧凑,使用方便、灵活。程序书写形式自由。共有3232个

10、关个关键字(附录键字(附录IIII),),9 9种控制语句。种控制语句。(2 2)运算符丰富,包括算术、逻辑、逗号运算、移位运算等等,多达运算符丰富,包括算术、逻辑、逗号运算、移位运算等等,多达44种种的运算符(附录的运算符(附录IIIIII)。)。(3 3)数据结构丰富。有整型、实型、字符型、数组类型,指针类型、结构数据结构丰富。有整型、实型、字符型、数组类型,指针类型、结构类型、共同体类型等等。类型、共同体类型等等。(4 4)具有结构化的控制语句,函数模块化。具有结构化的控制语句,函数模块化。(5 5)语法限制不太严格,程序设计自由度大。语法限制不太严格,程序设计自由度大。(6 6)C C

11、语言能进行位操作,实现汇编语言的大部分功能,可以直接对硬件语言能进行位操作,实现汇编语言的大部分功能,可以直接对硬件进行操作。进行操作。(7 7)生成代码质量高,程序执行效率高。生成代码质量高,程序执行效率高。(8 8)可移植性好。可移植性好。1.2 C C语言简单程序介绍语言简单程序介绍一、一、语言程序的结构语言程序的结构 例例1.1 输输出出一一个个字字符符串串:This is a C program.的的语语言言程程序序。程序如下:程序如下:#include“stdio.h”/包含预处理语句 main()printf(“This is a C program.n”);程序运行结果:程序运

12、行结果:This is a C program.该程序仅由一个该程序仅由一个main()主函数构成。主函数构成。stdio.h stdio.h 是标准输入输出库文件是标准输入输出库文件例例1.2 1.2 编写输出两个整数编写输出两个整数2424、1414之和的程序。之和的程序。用户告诉计算机要做的操作步骤用户告诉计算机要做的操作步骤:(1)定定义义3个个变变量量,并并给给 3个个变变量量分分别别分分配配内内存存空空间间,用于存放整数值;用于存放整数值;(2)给)给 2个变量,赋给个变量,赋给24、14两个整数;两个整数;(3)把两个整数的和值,赋给第三个变量;)把两个整数的和值,赋给第三个变量

13、;(4)输出第三个变量的值。)输出第三个变量的值。(5 5)运行结束。)运行结束。上述上述操作步骤,称为操作步骤,称为“算法算法”。用用C语言编写的源程序如下语言编写的源程序如下:#include“stdio.h”/包含预处理语句 main()main()int a int a,b b,c;/*define the variables*/c;/*define the variables*/a=24;b=14;a=24;b=14;c=a+b;c=a+b;printf(printf(“%d%d n n”,c);,c);/*%d:十进制数十进制数*/程序运行结果程序运行结果:38该程序仅由一个该程序

14、仅由一个main()主函构成。主函构成。例例1.31.3 从从键键盘盘输输入入两两个个整整型型数数,输输出出两两数数和和的的语语言言程序。程序如下:程序。程序如下:main()main()int a int a,b b,c;c;printf(“Please input two integers:printf(“Please input two integers:n n”);”);scanf(scanf(“%d%d”,&a),&a);scanf(scanf(“%d%d”,&b),&b);c=a+b;c=a+b;printf(printf(“%d%d n n”,c);,c);该程序仅由一个该程序仅

15、由一个main()主函构成。主函构成。人机交人机交互性互性程序运行情况:Please input two integers:3,58该程序也可以改写成如下:该程序也可以改写成如下:main()main()int a int a,b ;b ;scanf(scanf(“%d%d”,&a),&a);scanf(scanf(“%d%d”,&b),&b);printf(printf(“%d%d n n”,a+b);,a+b);表达式应用表达式应用的灵活性的灵活性例例1.4 1.4 从从键键盘盘输输入入两两个个整整型型数数,输输出出其其中中的的一一个大数。个大数。int max(int x,int y)i

16、f(xy)printf(“%dn”,x);else printf(“%dn”,y);main()int a,b;scanf(“%d”,&a);scanf(“%d”,&b);max(a,b);该程序由该程序由2个函数构成:个函数构成:main()函数和函数和 max()函数。函数。分支分支函数函数调用调用总结:总结:1.C程序是由函数构成的。每个程序由一个或多个函数组成,其中必须程序是由函数构成的。每个程序由一个或多个函数组成,其中必须有且仅有一个有且仅有一个主函数主函数main()。函数容易实现程序的模块化。函数容易实现程序的模块化.2.一个可执行的一个可执行的C语言程序语言程序总是从总是从m

17、ain函数开始执行函数开始执行,而不论其在整个程序中的位置如何。,而不论其在整个程序中的位置如何。3.每条语句或数据定义的最后必须有一个分号每条语句或数据定义的最后必须有一个分号“;”。说明:说明:在以下三种情况下不允许有分号:在以下三种情况下不允许有分号:a.在右花括号在右花括号“”后面不使用分号后面不使用分号;b.所定义的函数的名称后面不使用分号所定义的函数的名称后面不使用分号;大括号之后while(total=2000)limit+;total=total+limit;函数定义语句之后int max();4.C对输入输出实行函数化。对输入输出实行函数化。5.C程序书写格式自由,一行内可以

18、写几个语句,一个语句也可以分写在多程序书写格式自由,一行内可以写几个语句,一个语句也可以分写在多行上。行上。6.可用可用/*/对对C程序中的任何部分作注释,注释可以写在程序的任何位置程序中的任何部分作注释,注释可以写在程序的任何位置上,上,“/*”与与“*/”也可不在同一行上。也可不在同一行上。7.也可用也可用“/”。本行中本行中“/”之后的文字都视为注释。之后的文字都视为注释。8.在在C语言中,大小写字母是有语言中,大小写字母是有区别区别的。(的。(C语言习惯用小写字母语言习惯用小写字母)导入库函数语句之后#include“stdio.h”;c.预处理语句后面不使用分号预处理语句后面不使用分

19、号.二、函数的一般结构二、函数的一般结构 任任何何函函数数(包包括括主主函函数数main()main())都都是是由由函函数数说说明明和函数体两部分组成。和函数体两部分组成。其一般结构如下:其一般结构如下:函数类型函数类型 函数名函数名(函数参数表函数参数表)说明语句部分;说明语句部分;执行语句部分;执行语句部分;函数说明函数说明部分部分函数体函数体部分部分 1.1.函数说明函数说明 函数说明函数说明由三部分组成:由三部分组成:(1 1)函数类型(可缺省)函数类型(可缺省)(2 2)函数名)函数名 (3 3)函数参数表,其中函数参数表的格式为)函数参数表,其中函数参数表的格式为:数据类型数据类

20、型 形参形参,数据类型数据类型 形参形参2 2 例如,例例如,例1.3中的函数中的函数max(),其函数说明各部分如下,其函数说明各部分如下所示。所示。函数类型函数类型 函数名函数名 函数参数表函数参数表 int max (int x,int y )2.函数体函数体 函数体一般由说明语句和可执行语句两部分构成。函数体一般由说明语句和可执行语句两部分构成。在函数说明部分的下面,一对在函数说明部分的下面,一对 内的部分。大括号内的部分。大括号必须配对使用必须配对使用。(1)说明语句部分)说明语句部分 说明语句部分由变量定义、自定义类型定义、自定义说明语句部分由变量定义、自定义类型定义、自定义函数说

21、明、外部变量说明等组成。函数说明、外部变量说明等组成。int a,b;float k,h;(2)可执行语句)可执行语句,一般由若干条可执行语句构成。,一般由若干条可执行语句构成。main()int a int a,b b,c;c;/*变量定义部分变量定义部分*/*(2)以下是可执行语句)以下是可执行语句*/scanf(scanf(“%d%d”,&a),&a);scanf(scanf(“%d%d”,&b),&b);c=a+b;c=a+b;printf(printf(“%d%d n n”,c);,c);3.函数体函数体说明说明 (1)如果不需要,也可以缺省变量定义语句。例如,如果不需要,也可以缺省

22、变量定义语句。例如,例例1.1 程序中缺省变量定义语句。程序中缺省变量定义语句。(2)函数体中的变量定义语句,必须在所有可执行语函数体中的变量定义语句,必须在所有可执行语句之前。下面程序中变量定义语句句之前。下面程序中变量定义语句“int x;”的位置是的位置是非法的:非法的:main()int a,b;a=24;b=14;int x;x=a+b;printf(“%dn”,x);不允许变量定义不允许变量定义语句在可执行语语句在可执行语句之后句之后三、三、C语言的关键字和语句语言的关键字和语句 1、C语言的关键字共有语言的关键字共有32个,可分为四类。个,可分为四类。(1)数据类型关键字数据类型

23、关键字(12个):个):char,double,enum,float,int,long,short,signed,struct,union,unsigned,void(2)控制语句关键字(控制语句关键字(12个):个):break,case,continue,default,do,else,for,goto,if,return,switch,while(3)存储类型关键字存储类型关键字(4个):个):auto,extern,register,static(4)其它关键字(其它关键字(4个):个):const,sizeof,typedef,volatile(易变易变)2.Turbo C 中中扩充

24、的关键字扩充的关键字(11个个)ams,pascal,cdecl,interrupt far,huge,near (运行模式运行模式)-cs -ds -es -ss (段寄存器段寄存器)3.C 语言中使用的语言中使用的特定字特定字 C 语言中使用的具有特定含义的标识符,称为特定字。语言中使用的具有特定含义的标识符,称为特定字。C 语言中使用的特定字:语言中使用的特定字:include,define,ifdef,ifndef,endif ,line 特定标识符主要用在特定标识符主要用在C 语言的语言的编译预处理命令中。编译预处理命令中。4.C语言的语句语言的语句 按按照照语语句句功功能能或或构构

25、成成的的不不同同,可可将将语语言言的的语语句句分分为五类。为五类。(1)(1)函数调用语句函数调用语句 函函数数调调用用语语句句由由一一次次函函数数调调用用加加一一个个分分号号(语语句句结结束标志)构成。束标志)构成。例如例如 printf(This is a C statement.);(2)(2)表达式语句表达式语句表达式语句由表达式后加一个分号构成。表达式语句由表达式后加一个分号构成。例如在赋值表达式后加一个分号构成的赋值语句。例如在赋值表达式后加一个分号构成的赋值语句。num=5;是一个赋值语句是一个赋值语句 num=5 只是一个只是一个赋值表达式赋值表达式 (3)控制语句控制语句 控

26、控制制语语句句完完成成程程序序中中特特定定的的控控制制功功能能。C 语语言言只有只有9 条控制语句,又可细分为三种:条控制语句,又可细分为三种:选择结构控制语句选择结构控制语句 if()else,switch()循环结构控制语句循环结构控制语句 dowhile(),for(),while(),break,continue 其它控制语句其它控制语句 goto,return(4 4)空语句空语句 空语句仅由一个分号构成:空语句仅由一个分号构成:;空语句什么操作也不执行。空语句什么操作也不执行。(5 5)复合语句复合语句复复合合语语句句是是由由大大括括号号括括起起来来的的一一组组语语句句构构成成,右

27、右括括号号后不需要分号。后不需要分号。复合语句格式:复合语句格式:语句组语句组 例如:例如:a=a*3;b=a+b;c=a*b;复合语句的性质:复合语句的性质:复复合合语语句句在在语语法法上上和和单单一一语语句句使使用用相相同同,即即单单一一语语句可以出现的地方,也可以使用复合语句。句可以出现的地方,也可以使用复合语句。复复合合语语句句可可以以嵌嵌套套,即即复复合合语语句句中中也也可可出出现现复复合合语语句句。四、四、C语言源程序书写格式语言源程序书写格式1.1.C C语言程序使用英文小写字母书写。语言程序使用英文小写字母书写。C C语言区分字语言区分字母大小写,大写字母一般符号常量或特殊用途

28、使用。母大小写,大写字母一般符号常量或特殊用途使用。2.2.所所有有语语句句都都必必须须以以分分号号“;”结结束束,作作为为语语句句之之间间的分隔符。的分隔符。函数的最后一个语句也必须以分号函数的最后一个语句也必须以分号“;”结束。结束。3.3.程序行的书写格式自由。程序行的书写格式自由。既既允允许许1 1行行内内写写几几条条语语句句,也也允允许许1 1条条语语句句分分写写在在几几行行上。上。4.4.C C语言程序不使用行号。语言程序不使用行号。5.必须配对使用的符号:必须配对使用的符号:例如注释符号例如注释符号/*/*/、函数体的起止标识符(、函数体的起止标识符(花括号)、圆括号花括号)、圆

29、括号()()等。等。在在输输入入时时,可可连连续续输输入入这这些些起起止止标标识识符符,然然后后再再在在其其中进行插入来完成内容的编辑。中进行插入来完成内容的编辑。6.教材中使用的语法符号约定教材中使用的语法符号约定 .方括号表示可选(可以指定也可以缺省)方括号表示可选(可以指定也可以缺省)省略号表示前面的项可以重复省略号表示前面的项可以重复|多(含多(含2 2)中选)中选1 1 7.在源程序中,凡是用在源程序中,凡是用“/*”/*”和和“*“*/”/”括起来的文字,括起来的文字,都是注释。都是注释。C C语言的注释格式为:语言的注释格式为:/*/*/*/(1 1)“/*”/*”和和“*“*/”/”必须成对使用,且必须成对使用,且“/”/”和和“*”“*”、以及、以及“*”“*”和和“/”/”之间不能有空格,否之间不能有空格,否则都出错。则都出错。(2 2)注释的位置,可以单占注释的位置,可以单占1 1行,也可以跟在语句的行,也可以跟在语句的后面。后面。(3 3)如果如果1 1行写不下,可另起行写不下,可另起1 1行继续写。行继续写。(4 4)注注释释中中允允许许使使用用汉汉字字。在在非非中中文文操操作作系系统统下下,看到的是一串乱码,但不影响程序运行。看到的是一串乱码,但不影响程序运行。

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服