新编C语言程序设计教程(周学毛)第1章

上传人:muw****50 文档编号:247961253 上传时间:2024-10-21 格式:PPT 页数:37 大小:226.49KB
返回 下载 相关 举报
新编C语言程序设计教程(周学毛)第1章_第1页
第1页 / 共37页
新编C语言程序设计教程(周学毛)第1章_第2页
第2页 / 共37页
新编C语言程序设计教程(周学毛)第1章_第3页
第3页 / 共37页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第 1章 C 语 言 基 础,第 1章 C 语 言 基 础,1.1 C语言概述,1.2 基本语法成份,1.3 C程序的结构,1.4 C程序的实现,1.1 C语言概述,1.1.1 C语言的产生与发展,1.C语言的产生,C语言于1972年1973年间,诞生于美国的贝尔实验室,由创建。,C语言的产生基于两个方面的需要。一是为满足UNIX操作系统开发的需要。UNIX操作系统是一个通用的、复杂的计算机管理系统。二是为拉近高级语言与硬件之间距离的需要。,C语言集高级语言与汇编语言优点于一身。,C语言面对实际应用的需要而产生,直至今日仍不改初衷。,2.C语言的发展,1960年出现的ALGOL语言是一种面向问题的高级语言,远离硬件,不适于开发系统软件。1963年,英国剑桥大学推出CPL语言,CPL语言比ALGOL语言接近硬件一些,但规模较大,难以实现。1969年,剑桥大学的M.Richards对CPL语言进行简化,推出BCPL语言(BCPLBasic Combined Programming Language)。1970年,贝尔实验室的K.Thompson为DEC公司PDPCD*27计算机上运行的一种早期UNIX操作系统设计了一种类BCPL语言,称为B语言。B语言规模小,接近硬件,1971年在PDP-11计算机上实现,并写了UNIX操作系统。1960年1971年是C语言的萌芽阶段。,1972年1973年间,贝尔实验室的在保留B语言优点的基础上,创建了C语言。1973年,UNIX操作系统被用C语言改写,称为UNIX第五版。最初的C语言只是一种UNIX操作系统的工作语言,依附于UNIX系统,主要在贝尔实验室内部使用。,UNIX以后的第六版、第七版、SYSTEM 和SYSTEM都是在第五版的基础上发展起来的,C语言也作了多次改进。到1975年,UNIX第六版的公布,使C语言受到人们的普遍注意。,UNIX操作系统的广泛使用,促进了C语言的迅速发展与普及,C语言的发展与普及也促进了UNIX操作系统的推广。到1978年出现了独立于UNIX和PDP计算机的C语言,从而,C语言被迅速移植到大、中、小与微型机上。当年,B.W.Kernighan和以UNIX第七版的C编译程序为基础,出版了影响深远的名著C程序设计语言。,C+语言是C语言发展的新阶段,是一种更好的C语言,是应用广泛的面向对象的程序设计语言。,3.C语言的标准与方言,各机构推出了自己的C语言与版本,某些执行过程的微小差别不时引起C程序之间的不兼容。美国国家标准协会(ANSI)从1983年开始,经过长达五年的努力,制定了C语言的新标准ANSI C,现在提及C语言的标准就是指该新标准。ANSI C比原标准C有很大的发展,解决了经典定义中的二义性,给出了C语言的新特点。K&R也以新标准改写了他们的经典著作。任何C程序都必须遵循ANSI C标准,本教材的主体也以ANSI C作为基础。,1.1.2 C语言的特点,(1)C语言简洁、紧凑,压缩了一切不必要的成份。,(2)C语言运算丰富,将括号、赋值、强制类型转换、取变量地址等都以运算实现。,(3)C语言数据类型丰富,具有现代语言的各种数据类型;用户能扩充数据类型,能够实现各种复杂的数据结构,完成各种问题的数据描述。,(4)C语言是一种结构化程序设计语言,具有结构化语言所要求的三种基本结构。,(5)C语言允许直接访问物理地址,能进行位运算,能实现汇编语言的大部分功能,能直接对硬件进行操作。C语言是高级语言中的低级语言。,(6)C语言提供预处理机制,有利于大程序的编写和调试。,(7)C语言编译系统小,生成目标代码质量高,程序执行效率高。,(8)C语言输入输出功能用库函数实现,编写的程序移植性好。,(9)C语言语法限制不太严格,程序设计自由度大,对程序员要求不高。,1.2 基本语法成份,1.2.1 字符集,字符是可以区分的最小符号,构成程序的原始基础。C语言字符集是ASCII字符集的一个子集,包括英文字母、数字及特殊字符:,英文字母:az和AZ,数字:09,特殊字符:空格!%?(),由字符集中的字符可以构成C语言进一步的语法成份,如标识符、关键字、特殊的运算符等。,1.2.2 标识符,标识符在程序中用来标识各种程序成份,命名程序中的一些实体,如变量、常量、函数、类型、标号等对象的名字。,C语言规定,标识符必须以英文字母或下划线开头,是字母、数字、下划线的序列。,以下是合法的标识符:,x,c,a1,a2,op,y-1,zhou-prg,radius,prime,program,prg-1,cout,sun,day,以下是不合法的标识符:,a.1,1computer,x+y,!abc,99999,$100,3c,C语言中标识符要区分大小写,标识符abc与标识符ABC是不同的标识符。习惯上符号常量用大写字母表示,变量名称用小写字母表示。,标准C中,标识符的长度可以是任意的,一般有效长度为8个字符,TURBO C中标识符最大长度为32个字符。,标识符取名时不能与关键字同名,也不能与系统预先定义的标准标识符(如标准函数)同名,最好能“见名知义”,以提高程序的可读性。一般选用相应英文单词或拼音的缩写形式,尽量不要使用简单代数符号,如a,b,c,x,y,z等。标识符大多数采用“匈牙利”表示法,每个单词第一个字母大写,如StudentName、YearMonthDate。,1.2.3 关键字,关键字又称为保留字,由系统提供,用以表示特定的语法成份,如类型名称int、float,语句特征if、switch、while,运算符号sizeof等,是构成C语言的语法基础。,常见关键字有31个,参见附录A。,关键字有特定的语法含义,不允许用户重新定义。关键字在程序中像国家的名字一样,绝对不能拼错。,1.2.4 运算符,运算符实际上可以认为是系统定义的函数名字,这些函数作用于运算对象,得到一个结果值。运算符通常由1个或多个字符构成。,根据运算对象的个数不同,运算符可分为单目运算符、双目运算符和三目运算符,又称为一元运算符、二元运算符和三元运算符。,1.3 C程序的结构,例1-1,在屏幕上输出“C语言程序设计”。,/*程序 1 CD*2 1,输出C语言程序设计*/,include stdio.h,main(),printf(C语言程序设计);,运行结果:C语言程序设计,例1 2,求两个整数之和。,/*程序1-2,求两个整数之和*/,include stdio.h,main(),int a,b;,int sum;,printf(请输入两个整数a,b:);,scanf(%d,%d,sum=a+b;,printf(和=%dn,sum);,输入数据:1999,1,运行结果:和=2000,例1-3,求两个数的最大值。,/*程序1-3,求两个数的最大值*/,include stdio.h,float max(x,y)/*求最大值函数*/,float x,y;,float t;,if (xy)t=x;,else t=y;,return(t);ZK),main()/*主函数*/,float a,b;,float m;,printf(请输入两个数:);,scanf(%f,%f,m=max(a,b);/*调用求最大值的函数*/,printf(最大值=%6.2f n,m);,输入数据:12.1,3.4,运行结果:最大值=12.10,1.3.1 C程序的结构,1.函数,(1)C程序由若干函数组成,其核心成份是函数。,必须有一个且只能有一个主函数main(),主函数的名字为main。,可以是系统预定义的标准函数,如scanf函数、printf函数等,参见附录C。大多数函数由程序员根据实际问题的需要进行定义,函数之间是平行的关系。基于此,C语言被称为函数式语言。,(2)函数由函数头(函数的说明部分)与函数体(函数的语句部分)两部分组成。,函数头给出函数的特征描述,包括函数的属性、类型、名字、参数及参数类型。,如例 1 CD*2 3 中的求最大值函数的函数头:,float max(x,y),float x,y;/*函数属性缺省,函数类型实型,函数名字max,函数参数x,y,实型*/,函数体给出函数功能实现的数据描述和操作描述,是程序中用花括号括起的若干语句。,如例 1-1 中的函数体:,printf(C语言程序设计);,函数体可以为空,可以没有数据描述部分。,2.语句,(1)语句是组成程序的基本单位,函数功能的实现由若干条语句完成。说明性语句完成数据描述,执行性语句完成操作描述。,(2)语句由若干关键字加以标识,如ifelse语句、dowhile语句等。C语言语句必须以分号结束。,(3)C语言本身没有输入输出语句,C语言的输入输出操作由scanf函数和printf函数等库函数完成。,3.其它,1)预处理命令,C程序开始往往含有以“”开头的命令,它们是预处理命令。如例1-1中includestdio.h,用以指明包含文件。请参阅第 12 章。,2)程序注释,在程序中还有以“/*”开始,以“*/”结束的内容,它们是程序中的注释部分,用以帮助阅读程序。注释对程序的执行没有任何影响,编译时将被过滤掉。加必要的注释只为增加程序的可读性。,1.3.2 C程序的书写,(1)一行一般写一条语句。当然一行可以写多条语句,一条语句也可以写在多行上。,(2)整个程序采用紧缩格式书写。表示同一层次的语句行对齐,缩进同样多的字符位置。如循环体中的语句要缩进对齐,选择体中的语句要缩进对齐。,(3)花括号的书写方法较多,本书采用花括号对齐的书写方式,左边花括号处于第一条语句的开始位置,右边花括号独占一行,与左边花括号对齐。,(4)在程序中恰当地使用空行,分隔程序中的语句块,增加程序的可读性。,1.4 C程序的实现,1.4.1 实现步骤,C程序在计算机上的实现与其它高级语言程序的实现一样,一般要经过编辑、编译、连接、运行四个步骤,如图 1-1 所示。,图 1-1,1.编辑,编辑是将C语言的源程序输入计算机,并以文本文件的形式存储在磁盘。编辑是建立C源程序文件的过程,源程序文件的扩展名为.C或.CPP。,编辑可以用任何文字处理软件完成,一般用编译器本身集成的编辑器进行编辑。,2.编译,C语言是以编译方式实现的高级语言,C程序的实现必须经过编译程序对源程序进行编译,生成目标代码程序。目标代码程序的扩展名为.OBJ。,编译前先进行预处理。编译过程主要进行词法分析和语法分析。,编译有错时,在屏幕上列出错误的位置和种类。此时,要返回到编辑步骤修改源程序,修改后,再进行编译。,3.连接,编译形成的目标代码程序机器可以识别,但还不能直接执行,还需要将目标代码程序与库文件进行连接处理,连接工作由连接程序完成。经过连接,生成可执行文件。可执行文件的扩展名为.EXE。,连接有错同样需返回到编辑步骤修改源程序,修改后,再进行编译、连接。,4.运行,一个C源程序经过编译、连接后生成了可执行文件。运行可执行文件,可通过编译系统下的运行功能,也可像执行DOS的外部命令一样,输入执行文件名运行。,程序运行后,一般在屏幕上显示运行结果。根据运行结果可以判断程序是否还有算法方面的错误。,编译时产生的错误是语法错误,运行时出现的错误是逻辑错误。出现逻辑错误时需要修改算法,重新编辑、编译、运行程序。,1.4.2 程序的执行,C程序的执行总是从主函数main()开始,不管主函数在程序中什么位置。主函数中的语句依先后顺序执行,除非改变了程序的执行流程。其它函数通过被调用执行。,1.4.3 TURBO C上机操作,1.启动TURBO C,只需执行TC.EXE文件,即可启动TURBO C进入TURBO C的操作界面。,如使用中文,需先将计算机置于中文操作系统管理之下。,用TC加源程序文件名可快速启动TURBO C,立即进入编辑操作。,2.TURBO C操作界面,启动TURBO C后,主操作界面如图
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!