《第1章语言概述精选文档.ppt》由会员分享,可在线阅读,更多相关《第1章语言概述精选文档.ppt(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第1章语言概述本讲稿第一页,共二十四页本章导读本章导读 主主要要介介绍绍:C语语言言的的发发展展历历史史、基基本本特特点点和和简简单单的的C语言程序结构与组成语言程序结构与组成;重重点点介介绍绍:算算法法的的含含义义与与算算法法的的描描述述工工具具,以以传传统统流程图为重点分析了算法的描述方法。流程图为重点分析了算法的描述方法。目目 标标:了解了解C语言的形成、发展和基本特点;语言的形成、发展和基本特点;了解程序、程序设计、高级语言的概念;掌握了解程序、程序设计、高级语言的概念;掌握C语语言程序的基本结构和组成;掌握计算机算法的基本概念言程序的基本结构和组成;掌握计算机算法的基本概念和算法描述
2、的基本工具;运用传统流程图描述一个具体和算法描述的基本工具;运用传统流程图描述一个具体的算法。的算法。本讲稿第二页,共二十四页1.1 C语言概况语言概况 1960年年ALGOL60语言(一种面向问题的高级语言)语言(一种面向问题的高级语言)1963年英国剑桥大学推出年英国剑桥大学推出CPL语言语言,同年剑桥大学的马丁同年剑桥大学的马丁理查理查德对其简化,提出德对其简化,提出BCPL语言语言1970年美国贝尔实验室的肯年美国贝尔实验室的肯汤姆逊进一步简化,提出了汤姆逊进一步简化,提出了B语语言(取言(取BCPL的第一个字母)的第一个字母)1972年美国贝尔实验室的布朗年美国贝尔实验室的布朗W卡尼
3、汉和丹尼斯卡尼汉和丹尼斯M利奇对利奇对其完善和扩充,提出了其完善和扩充,提出了C语言(取语言(取BCPL的第二个字母)的第二个字母)1987年美国标准化协会制定了年美国标准化协会制定了C语言标准语言标准“ANSI C”,即现在,即现在流行的流行的C语言语言1.1.1 C语言的发展语言的发展本讲稿第三页,共二十四页1.1.2 C语言的特点语言的特点(1)C语言是具有低级语言功能的高级语言语言是具有低级语言功能的高级语言 C语言既具有高级语言的功能,又具有低级语言语言既具有高级语言的功能,又具有低级语言的许多功能。它把高级语言的基本结构和语句与低的许多功能。它把高级语言的基本结构和语句与低级语言的
4、实用性结合起来,是处于汇编语言和高级级语言的实用性结合起来,是处于汇编语言和高级语言之间的一种程序设计语言,也可称其为语言之间的一种程序设计语言,也可称其为“中级中级语言语言”。(2)C语言简洁、紧凑,使用方便、灵活语言简洁、紧凑,使用方便、灵活 C语言一共只有语言一共只有32个关键词,个关键词,9种控制语句,种控制语句,Turbo C 2.0增加了增加了11个关键词(用于各种增强和扩展个关键词(用于各种增强和扩展功能)。程序书写形式自由,主要用小写字母表示,功能)。程序书写形式自由,主要用小写字母表示,相对于其他高级语言源程序短。相对于其他高级语言源程序短。本讲稿第四页,共二十四页(3)运算
5、符丰富,表达式能力强运算符丰富,表达式能力强 C语言共有语言共有34种运算符,范围广泛,除一般高级种运算符,范围广泛,除一般高级语言所使用的算术、关系和逻辑运算符外,还可以实语言所使用的算术、关系和逻辑运算符外,还可以实现以二进制位为单位的运算,并且具有如现以二进制位为单位的运算,并且具有如a+,-b等单等单项运算符和项运算符和+=、-=、*=、/=等复合运算符等。等复合运算符等。(4)数据结构丰富,便于数据的描述与存储数据结构丰富,便于数据的描述与存储 C语言具有丰富的数据结构,其数据类型有整型、语言具有丰富的数据结构,其数据类型有整型、实型、字符型、数组类型、指针类型、结构体类型、共实型、
6、字符型、数组类型、指针类型、结构体类型、共用体类型等,因此能实现复杂的数据结构的运算。用体类型等,因此能实现复杂的数据结构的运算。1.1.2 C语言的特点语言的特点本讲稿第五页,共二十四页(5)C语言是结构化、模块化的编程语言语言是结构化、模块化的编程语言 程序的逻辑结构可以使用顺序、分支和循环程序的逻辑结构可以使用顺序、分支和循环3种基种基本结构组成。本结构组成。C语言程序采用函数结构,十分便于把语言程序采用函数结构,十分便于把整体程序分割成若干相对独立的功能模块,并且为程整体程序分割成若干相对独立的功能模块,并且为程序模块间的相互调用以及数据传递提供了便利。序模块间的相互调用以及数据传递提
7、供了便利。(6)C语言程序中,可使用宏定义编译预处理命令、条语言程序中,可使用宏定义编译预处理命令、条件编译预处理命令,为编程提供了方便件编译预处理命令,为编程提供了方便1.1.2 C语言的特点语言的特点本讲稿第六页,共二十四页(7)可移植性好可移植性好 与汇编语言相比,与汇编语言相比,C程序基本上不作修改就可以运程序基本上不作修改就可以运行于各种型号的计算机和各种操作系统。行于各种型号的计算机和各种操作系统。(8)C语言也存在一些不足之处语言也存在一些不足之处 例如运算符及其优先级过多、语法定义不严格例如运算符及其优先级过多、语法定义不严格等,对于初学者有一定的困难。等,对于初学者有一定的困
8、难。由于由于C语言具有上述特点,因此语言具有上述特点,因此C语言得到了迅速语言得到了迅速推广,成为人们编写大型软件的首选语言之一。许多原推广,成为人们编写大型软件的首选语言之一。许多原来用汇编语言处理的问题可以用来用汇编语言处理的问题可以用C语言来处理了。语言来处理了。1.1.2 C语言的特点语言的特点本讲稿第七页,共二十四页1.2 简单的简单的C语言程序语言程序【例例1.1】在计算机屏幕上输出在计算机屏幕上输出“Hello,World!”/*EX1-1.C */main()printf(Hello,World!n);本讲稿第八页,共二十四页 /*EX1-2.C */main()int r;f
9、loat l,s;r=5;l=2*3.14159*r;s=3.14159*r*r;printf(r=%d,l=%f,s=%fn,r,l,s);【例例1.2】己知圆的半径,求圆的周长和面积己知圆的半径,求圆的周长和面积本讲稿第九页,共二十四页/*EX1-3.C */#include stdio.hmain()int x,y,z;scanf(%d,%d,&x,&y);z=area(x,y);printf(area is%dn,z);int area(int a,int b)int c;c=a*b;return(c);【例例1.3】输入矩形的两个边长,求矩形的面积输入矩形的两个边长,求矩形的面积本讲
10、稿第十页,共二十四页(1)C程序由函数组成程序由函数组成 每个每个C程序有且仅有一个主函数程序有且仅有一个主函数main。一个。一个C程程序由一个序由一个main函数和若干个子函数构成。函数和若干个子函数构成。(2)函数可分为两部分:函数说明和函数体函数可分为两部分:函数说明和函数体 函数说明的形式:函数说明的形式:函数类型函数类型 函数名函数名(形式参数形式参数1类型类型 形式参数形式参数1,形式,形式参数参数2类型类型 形式参数形式参数2,)函数体的形式:函数体的形式:变量定义(说明)部分变量定义(说明)部分 函数执行部分函数执行部分 总总结结本讲稿第十一页,共二十四页(3)书写格式书写格
11、式.C程序的书写格式自由程序的书写格式自由。一行内可以写几。一行内可以写几条语句,一条语句也可以写在多行上,每条语句后条语句,一条语句也可以写在多行上,每条语句后必须以必须以“;”作为语句的结束。复合语句要以一对作为语句的结束。复合语句要以一对括起来。括起来。(4)执行过程执行过程.C程序的执行总是从主函数开始,并在主函程序的执行总是从主函数开始,并在主函数中结束数中结束.主函数的位置在程序中是任意的,其他函主函数的位置在程序中是任意的,其他函数总是通过函数调用语句来执行。数总是通过函数调用语句来执行。总总结结本讲稿第十二页,共二十四页(5)函数调用函数调用.主函数可以调用任何函数,任何非主函
12、数可以调用任何函数,任何非主函数之间都可以相互调用,但是不能调用主函主函数之间都可以相互调用,但是不能调用主函数。数。(6)输入输出输入输出.C语言本身没有输入输出语句。语言本身没有输入输出语句。输入输入和输出操作是由调用系统提供的输入输出函数来完成和输出操作是由调用系统提供的输入输出函数来完成的。的。(7)注释注释.可以用可以用/*/对对C程序中的任何部分作注程序中的任何部分作注释。释。总总结结本讲稿第十三页,共二十四页1.3 算算 法法 利用计算机解决问题,首先要编写计算机程序。利用计算机解决问题,首先要编写计算机程序。编制正确的计算机程序必须具备两个基本条件:编制正确的计算机程序必须具备
13、两个基本条件:一是掌握一门计算机高级语言的规则,二是要掌握一是掌握一门计算机高级语言的规则,二是要掌握解题的方法和步骤。解题的方法和步骤。计算机语言只是一种工具。简单地掌握语言的计算机语言只是一种工具。简单地掌握语言的语法规则是不够的,最重要的是拟定出有效的解题语法规则是不够的,最重要的是拟定出有效的解题方法和步骤的算法。方法和步骤的算法。1.3.1 算法概述算法概述1算法的含义算法的含义算法是指解决问题的方法和步骤。算法是指解决问题的方法和步骤。本讲稿第十四页,共二十四页正确的算法必须满足下列正确的算法必须满足下列3个条件:个条件:(1)每一个逻辑块必须由可以实现的语句来完成;每一个逻辑块必
14、须由可以实现的语句来完成;(2)模块与模块之间的关系应该是唯一的;模块与模块之间的关系应该是唯一的;(3)算法要能终止,不能造成死循环。算法要能终止,不能造成死循环。1.3.1 算法概述算法概述本讲稿第十五页,共二十四页2算法的特征算法的特征一个正确的算法具有五个基本特征:一个正确的算法具有五个基本特征:(1)有穷性有穷性 (2)确定性确定性 (3)输入输入 (4)输出输出 (5)可行性可行性实质上,算法反映的是解决问题的思路。许多问实质上,算法反映的是解决问题的思路。许多问题,只要仔细分析对象数据,就容易找到处理方法。题,只要仔细分析对象数据,就容易找到处理方法。1.3.1 算法概述算法概述
15、本讲稿第十六页,共二十四页算法的表示方法很多,主要有传算法的表示方法很多,主要有传统流程图、统流程图、N-S图、伪代码、自然语图、伪代码、自然语言和计算机程序语言等。这里重点言和计算机程序语言等。这里重点介绍传统流程图和介绍传统流程图和N-S图。图。1.3.2 算法的表示算法的表示本讲稿第十七页,共二十四页1.传统流程图传统流程图起止框起止框处理框处理框判断框判断框连接点连接点流程线流程线Y=xY=-xYNx0输入输出输入输出本讲稿第十八页,共二十四页画出求画出求1+2+3+1+2+3+100+100之和的流程图之和的流程图【例例1-4】YNx100开始s+is,i+1i0s,1i结束输出s的
16、值本讲稿第十九页,共二十四页 A BP成立 不成立A B当P成立 AA直到P成立 1973年美国学者提出的一种新的流程图形式。年美国学者提出的一种新的流程图形式。完全去掉带箭头的流程线完全去掉带箭头的流程线,全部算法写在一个矩形框内,全部算法写在一个矩形框内,框可以包含其它从属于它的方框。这种流程图适于结构框可以包含其它从属于它的方框。这种流程图适于结构化程序设计算法的描述。化程序设计算法的描述。0 0s,1s,1i i当当x x100100成立成立s+is+is si+1i+1i i输出输出s s的值的值2.N-S图图本讲稿第二十页,共二十四页1.4 运行程序的步骤和方法1.4.1 运行程序的步骤上机输入与编辑源程序对源程序进行编译与库函数连接运行目标程序本讲稿第二十一页,共二十四页本讲稿第二十二页,共二十四页本章小结本章小结 本本章章主主要要介介绍绍了了C语语言言的的发发展展和和特特点点,C语语言言程程序序的的构构成成以以及及算算法法的的定定义义和和表表示示,其其中中C程程序序的的构构成成和和算算法法的的表表示示是是重重点点和和难难点点,算算法法的的表表示示方方法法中中以以传传统统流流程程图图为为主主,本本书书后后续续各各章章中中都都使使用用传传统统流流程程图图来来表示算法。表示算法。本讲稿第二十三页,共二十四页结束结束结束结束本讲稿第二十四页,共二十四页