新编C语言程序设计教程第1章ppt课件_第1页
新编C语言程序设计教程第1章ppt课件_第2页
新编C语言程序设计教程第1章ppt课件_第3页
新编C语言程序设计教程第1章ppt课件_第4页
新编C语言程序设计教程第1章ppt课件_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、第 1章 C 语 言 基 础 第第 1章章 C 语语 言言 基基 础础 1.1 C言语概述言语概述 1.2 根本语法成份根本语法成份 1.3 C程序的构造程序的构造 1.4 C程序的实现程序的实现 第 1章 C 语 言 基 础 1.1 C言语概述言语概述 1.1.1 C言语的产生与开展言语的产生与开展 1. C言语的产生言语的产生 C言语于言语于1972年年1973年间年间, 诞生于美国的贝尔实验室诞生于美国的贝尔实验室, 由由Denis.M.Ritchie创建。创建。 C言语的产生基于两个方面的需求。一是为满足言语的产生基于两个方面的需求。一是为满足UNIX操作系统操作系统开发的需求。开发的

2、需求。UNIX操作系统是一个通用的、复杂的计算机管理系统。操作系统是一个通用的、复杂的计算机管理系统。二是为拉近高级言语与硬件之间间隔的需求。二是为拉近高级言语与硬件之间间隔的需求。 C言语集高级言语与汇编言语优点于一身。言语集高级言语与汇编言语优点于一身。 C言语面对实践运用的需求而产生言语面对实践运用的需求而产生, 直至今日仍不改初衷。直至今日仍不改初衷。 第 1章 C 语 言 基 础 2. C言语的开展言语的开展 1960年出现的ALGOL言语是一种面向问题的高级言语, 远离硬件, 不适于开发系统软件。1963年, 英国剑桥大学推出CPL言语, CPL言语比ALGOL言语接近硬件一些,

3、但规模较大, 难以实现。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言语的萌芽阶段。 第 1章 C 语 言 基 础 1972年1973年间, 贝尔实验室的D.M.Ritchie在保管B言语优点的根底上, 创建了

4、C言语。1973年, UNIX操作系统被用C言语改写, 称为UNIX第五版。最初的C言语只是一种UNIX操作系统的任务言语, 依靠于UNIX系统, 主要在贝尔实验室内部运用。 UNIX以后的第六版、第七版、 SYSTEM 和SYSTEM都是在第五版的根底上开展起来的, C言语也作了多次改良。到1975年, UNIX第六版的公布, 使C言语遭到人们的普遍留意。 第 1章 C 语 言 基 础 UNIX操作系统的广泛运用, 促进了C言语的迅速开展与普及, C言语的开展与普及也促进了UNIX操作系统的推行。到1978年出现了独立于UNIX和PDP计算机的C言语, 从而,C言语被迅速移植到大、中、小与微

5、型机上。当年, B.W.Kernighan和D.M.Ritchie以UNIX第七版的C编译程序为根底, 出版了影响深远的名著。 C+言语是C言语开展的新阶段, 是一种更好的C言语, 是运用广泛的面向对象的程序设计言语。 第 1章 C 语 言 基 础 3. C言语的规范与方言 各机构推出了本人的C言语与版本, 某些执行过程的微小差别不时引起C程序之间的不兼容。美国国家规范协会ANSI从1983年开场, 经过长达五年的努力, 制定了C言语的新规范ANSI C, 如今提及C言语的规范就是指该新规范。 ANSI C比原规范C有很大的开展, 处理了经典定义中的二义性, 给出了C言语的新特点。K&

6、R也以新规范改写了他们的经典著作。任何C程序都必需遵照ANSI C规范, 本教材的主体也以ANSI C作为根底。 第 1章 C 语 言 基 础 1.1.2 C言语的特点言语的特点 1C言语简约、 紧凑, 紧缩了一切不用要的成份。 (2) C言语运算丰富, 将括号、 赋值、 强迫类型转换、 取变量地址等都以运算实现。 (3) C言语数据类型丰富, 具有现代言语的各种数据类型; 用户能扩展数据类型, 可以实现各种复杂的数据构造, 完成各种问题的数据描画。 (4) C言语是一种构造化程序设计言语, 具有构造化言语所要求的三种根本构造。 第 1章 C 语 言 基 础 (5) C言语允许直接访问物理地址

7、, 能进展位运算, 能实现汇编言语的大部分功能, 能直接对硬件进展操作。 C言语是高级言语中的低级言语。 (6) C言语提供预处置机制, 有利于大程序的编写和调试。 (7) C言语编译系统小, 生成目的代码质量高, 程序执行效率高。 (8) C言语输入输出功能用库函数实现, 编写的程序移植性好。 (9) C言语语法限制不太严厉, 程序设计自在度大, 对程序员要求不高。 第 1章 C 语 言 基 础 1.2 根本语法成份根本语法成份 1.2.1 字符集字符集 字符是可以区分的最小符号, 构成程序的原始根底。 C言语字符集是ASCII字符集的一个子集, 包括英文字母、数字及特殊字符: 英文字母:

8、az和AZ 数字: 09 特殊字符:空格 ! % & * - + = / , : ; ? ( ) 由字符集中的字符可以构成C言语进一步的语法成份, 如标识符、 关键字、 特殊的运算符等。 第 1章 C 语 言 基 础 1.2.2 标识符标识符 标识符在程序中用来标识各种程序成份, 命名程序中的一些实体, 如变量、 常量、函数、类型、标号等对象的名字。 C言语规定, 标识符必需以英文字母或下划线开头, 是字母、 数字、 下划线的序列。 以下是合法的标识符: x, c, a1, a2, op, y-1, zhou-prg, radius, prime, program, prg-1, co

9、ut, sun, day 以下是不合法的标识符: a.1, 1computer, x+y, !abc, 99999, $100, , 3c 第 1章 C 语 言 基 础 C言语中标识符要区分大小写, 标识符abc与标识符ABC是不同的标识符。 习惯上符号常量用大写字母表示, 变量称号用小写字母表示。 规范C中, 标识符的长度可以是恣意的, 普通有效长度为8个字符, TURBO C中标识符最大长度为32个字符。 标识符取名时不能与关键字同名, 也不能与系统预先定义的规范标识符如规范函数同名, 最好能“见名知义, 以提高程序的可读性。 普通选用相应英文单词或拼音的缩写方式,尽量不要运用简单代数符号

10、, 如a, b, c, x, y, z等。 标识符大多数采用“匈牙利表示法, 每个单词第一个字母大写, 如StudentName、 YearMonthDate。 第 1章 C 语 言 基 础 1.2.3 关键字关键字 关键字又称为保管字关键字又称为保管字, 由系统提供由系统提供, 用以表示用以表示特定的语法成份特定的语法成份, 如类型称号如类型称号int、 float,语句特语句特征征if、 switch、 while, 运算符号运算符号sizeof等等, 是构成是构成C言语的语法根底。言语的语法根底。 常见关键字有常见关键字有31个个, 参见附录参见附录A。 关键字有特定的语法含义关键字有特

11、定的语法含义, 不允许用户重新不允许用户重新定义。定义。 关键字在程序中像国家的名字一样关键字在程序中像国家的名字一样, 绝对绝对不能拼错。不能拼错。 第 1章 C 语 言 基 础 1.2.4 运算符运算符 运算符实践上可以以为是系统定义的函数运算符实践上可以以为是系统定义的函数名字名字, 这些函数作用于运算对象这些函数作用于运算对象, 得到一个结果得到一个结果值。运算符通常由值。运算符通常由1个或多个字符构成。个或多个字符构成。 根据运算对象的个数不同根据运算对象的个数不同, 运算符可分为单运算符可分为单目运算符、目运算符、 双目运算符和三目运算符双目运算符和三目运算符, 又称为又称为一元运

12、算符、二元运算符和三元运算符。一元运算符、二元运算符和三元运算符。 第 1章 C 语 言 基 础 1.3 C程序的构造程序的构造例例1-1 在屏幕上输出在屏幕上输出“C言语程序设计。言语程序设计。/*程序程序 1 CD*2 1, 输出输出C言语程序设计言语程序设计*/include stdio.hmain( )printfC言语程序设计言语程序设计; 运转结果运转结果: C言语程序设计言语程序设计 第 1章 C 语 言 基 础 例例1 2 求两个整数之和。求两个整数之和。 /*程序程序1 - 2, 求两个整数之和求两个整数之和*/ include stdio.h main( ) int a,

13、b; int sum; printf请输入两个整数请输入两个整数a, b: ; scanf%d, %d, &a, &b; sum=a+b; printf和和=%dn, sum; 输入数据输入数据: 2019, 1运转结果运转结果: 和和=2000 第 1章 C 语 言 基 础 例例1-3 求两个数的最大值。求两个数的最大值。 /*程序程序1 - 3, 求两个数的最大值求两个数的最大值*/ include stdio.h float maxx, y /*求最大值函数求最大值函数*/ float x, y; float t; if xy t=x; else t=y; return(

14、t); ZK)第 1章 C 语 言 基 础 main( ) /*主函数*/float a, b; float m; printf请输入两个数: ; scanf%f, %f, &a,&b; m=maxa, b; /*调用求最大值的函数*/ printf(最大值=%6.2f n, m);输入数据: 12.1, 3.4运转结果: 最大值= 12.10 第 1章 C 语 言 基 础 1.3.1 C程序的构造程序的构造 1. 函数函数 (1) C程序由假设干函数组成程序由假设干函数组成, 其中心成份是函数。其中心成份是函数。 必需有一个且只能有一个主函数必需有一个且只能有一个主函数mai

15、n( ), 主函数的主函数的名字为名字为main。 可以是系统预定义的规范函数可以是系统预定义的规范函数, 如如scanf函数、函数、 printf函数等函数等, 参见附录参见附录C。大多数函数由程序员根据实践。大多数函数由程序员根据实践问题的需求进展定义问题的需求进展定义, 函数之间是平行的关系。基于此函数之间是平行的关系。基于此, C言语被称为函数式言语。言语被称为函数式言语。 第 1章 C 语 言 基 础 (2) 函数由函数头函数的阐明部分与函数体函数的语句部分两部分组成。 函数头给出函数的特征描画, 包括函数的属性、 类型、 名字、 参数及参数类型。 如例 1 CD*2 3 中的求最大

16、值函数的函数头: float maxx, y float x, y; /*函数属性缺省, 函数类型实型, 函数名字max, 函数参数x, y, 实型*/ 第 1章 C 语 言 基 础 函数体给出函数功能实现的数据描画和操作描画, 是程序中用花括号括起的假设干语句。 如例 1 - 1 中的函数体: printfC言语程序设计; 函数体可以为空, 可以没有数据描画部分。 第 1章 C 语 言 基 础 2. 语句语句 (1) 语句是组成程序的根本单位语句是组成程序的根本单位, 函数功能的实现由函数功能的实现由假设干条语句完成。阐明性语句完成数据描画假设干条语句完成。阐明性语句完成数据描画, 执行性执

17、行性语句完成操作描画。语句完成操作描画。 (2) 语句由假设干关键字加以标识语句由假设干关键字加以标识, 如如ifelse语句、语句、dowhile语句等。语句等。C言语语句必需以分号终了。言语语句必需以分号终了。 (3) C言语本身没有输入输出语句言语本身没有输入输出语句, C言语的输入言语的输入输出操作由输出操作由scanf函数和函数和printf函数等库函数完成。函数等库函数完成。 第 1章 C 语 言 基 础 3. 其它其它 1) 预处置命令预处置命令 C程序开场往往含有以程序开场往往含有以“开头的命令开头的命令, 它们是预它们是预处置命令。处置命令。 如例如例1-1中中include

18、stdio.h, 用以指用以指明包含文件。明包含文件。 请参阅第请参阅第 12 章。章。 2) 程序注释程序注释 在程序中还有以在程序中还有以“/*开场开场, 以以“*/终了的内容终了的内容, 它它们是程序中的注释部分们是程序中的注释部分, 用以协助阅读程序。注释对程序用以协助阅读程序。注释对程序的执行没有任何影响的执行没有任何影响, 编译时将被过滤掉。加必要的注释编译时将被过滤掉。加必要的注释只为添加程序的可读性。只为添加程序的可读性。 第 1章 C 语 言 基 础 1.3.2 C程序的书写程序的书写 (1) 一行普通写一条语句。当然一行可以写多条语句, 一条语句也可以写在多行上。 (2)

19、整个程序采用紧缩格式书写。表示同一层次的语句行对齐, 缩进同样多的字符位置。如循环体中的语句要缩进对齐, 选择体中的语句要缩进对齐。 (3) 花括号的书写方法较多, 本书采用花括号对齐的书写方式, 左边花括号处于第一条语句的开场位置, 右边花括号独占一行, 与左边花括号对齐。 (4) 在程序中恰当地运用空行, 分隔程序中的语句块, 添加程序的可读性。 第 1章 C 语 言 基 础 1.4 C程序的实现程序的实现 1.4.1 实现步骤实现步骤 C程序在计算机上的实现与其它高级言语程序的实现一样, 普通要经过编辑、编译、衔接、运转四个步骤,如图 1 - 1 所示。 图 1 - 1 第 1章 C 语

20、 言 基 础 1. 编辑编辑 编辑是将编辑是将C言语的源程序输入计算机言语的源程序输入计算机, 并以文本文并以文本文件的方式存储在磁盘。编辑是建立件的方式存储在磁盘。编辑是建立C源程序文件的过源程序文件的过程程, 源程序文件的扩展名为源程序文件的扩展名为 .C或或 .CPP。 编辑可以用任何文字处置软件完成编辑可以用任何文字处置软件完成, 普通用编译器普通用编译器本身集成的编辑器进展编辑。本身集成的编辑器进展编辑。 第 1章 C 语 言 基 础 2. 编译编译 C言语是以编译方式实现的高级言语言语是以编译方式实现的高级言语, C程序的实现程序的实现必需经过编译程序对源程序进展编译必需经过编译程

21、序对源程序进展编译, 生成目的代码程生成目的代码程序。目的代码程序的扩展名为序。目的代码程序的扩展名为 .OBJ。 编译前先进展预处置。编译过程主要进展词法分析编译前先进展预处置。编译过程主要进展词法分析和语法分析。和语法分析。 编译有错时编译有错时, 在屏幕上列出错误的位置和种类。此在屏幕上列出错误的位置和种类。此时时, 要前往到编辑步骤修正源程序要前往到编辑步骤修正源程序,修正后修正后, 再进展编译。再进展编译。 第 1章 C 语 言 基 础 3. 衔接衔接 编译构成的目的代码程序机器可以识别编译构成的目的代码程序机器可以识别, 但还不能但还不能直接执行直接执行, 还需求将目的代码程序与库

22、文件进展衔接处还需求将目的代码程序与库文件进展衔接处置置, 衔接任务由衔接程序完成。经过衔接衔接任务由衔接程序完成。经过衔接, 生成可执行生成可执行文件。文件。 可执行文件的扩展名为可执行文件的扩展名为 .EXE。 衔接有错同样需前往到编辑步骤修正源程序衔接有错同样需前往到编辑步骤修正源程序, 修正修正后后, 再进展编译、再进展编译、 衔接。衔接。 第 1章 C 语 言 基 础 4. 运转运转 一个一个C源程序经过编译、衔接后生成了可执行文源程序经过编译、衔接后生成了可执行文件。运转可执行文件件。运转可执行文件, 可经过编译系统下的运转功能可经过编译系统下的运转功能, 也可像执行也可像执行DO

23、S的外部命令一样的外部命令一样, 输入执行文件名运转。输入执行文件名运转。 程序运转后程序运转后, 普通在屏幕上显示运转结果。根据运普通在屏幕上显示运转结果。根据运转结果可以判别程序能否还有算法方面的错误。转结果可以判别程序能否还有算法方面的错误。 编译时产生的错误是语法错误编译时产生的错误是语法错误, 运转时出现的错误运转时出现的错误是逻辑错误。出现逻辑错误时需求修正算法是逻辑错误。出现逻辑错误时需求修正算法, 重新编辑、重新编辑、 编译、编译、 运转程序。运转程序。 第 1章 C 语 言 基 础 1.4.2 程序的执行程序的执行 C程序的执行总是从主函数main( )开场, 不论主函数在程

24、序中什么位置。主函数中的语句依先后顺序执行, 除非改动了程序的执行流程。 其它函数经过被调用执行。 第 1章 C 语 言 基 础 1.4.3 TURBO C上机操作上机操作 1. 启动启动TURBO C 只需执行只需执行TC.EXE文件文件,即可启动即可启动TURBO C进入进入TURBO C的操作界面。的操作界面。 如运用中文如运用中文, 需先将计算机置于中文操作系统管理需先将计算机置于中文操作系统管理之下。之下。 用用TC加源程序文件名可快速启动加源程序文件名可快速启动TURBO C, 立刻立刻进入编辑操作。进入编辑操作。 第 1章 C 语 言 基 础 2. TURBO C操作界面操作界面

25、启动启动TURBO C后后, 主操作界面如图主操作界面如图 1 - 2 所示。所示。 图 1 - 2 第 1章 C 语 言 基 础 1) 组成 TURBO C主操作界面由主菜单区、编辑窗口、信息窗口、 热键区四部分组成。 TURBO C的操作采用菜单驱动, 主菜单包括File文件操作、Edit编辑操作、Run运转操作、Compile编译操作、Project工程文件、Options编译选择及Debug跟踪排错各项。 热键区提供常用操作的快速功能键方式, 如F1协助、F2保管文件、F3装入文件、F5缩放窗口、 F6切换窗口、ALT+F5用户屏幕、ALT+X退出TURBO C等。 第 1章 C 语 言 基 础 2) 主窗口 当前操作窗口为主窗口任务窗口, 主窗口为双线框表示, 按F6可切换主窗口, 按F5可缩放主窗口。 3) 菜单项选择择 方式一: 按F10进入主菜单区, 经过菜单项的大写字母选择相应菜单项, 或经过光标控制键、 、 、 挪动高亮度光棒至相应菜单项, 按回车选择相应菜单项。 方式二: 用热键ALT加相应菜单项的大写字母, 选择相应菜单项。 对子菜单项的选择, 操作方法类似。

温馨提示

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

评论

0/150

提交评论