第1章C语言概论 本章学习目标 本章简要介绍C语言的起源与发展,阐述C语言的 特点,说明C语言的结构组成和上机过程,重点 了解C语言的函数构成和源程序的执行过程。通 过本章的学习,读者应掌握以下内容: C语言基本结构 C语言程序执行 2024/10/28
2024/10/28 1 第1章 C语言概论 本章学习目标 本章简要介绍C语言的起源与发展,阐述C语言的 特点,说明C语言的结构组成和上机过程,重点 了解C语言的函数构成和源程序的执行过程。通 过本章的学习,读者应掌握以下内容: C语言基本结构 C语言程序执行
1.1C语言概述 .1.1C语言的起源与发展 ALGOL60→CPL→BCPC→B→C→标准C→ANSI C→ISOC。 ALGOL60:一种面向问题的高级语言。ALGOL60离硬件较 远,不适合编写系统程序。 CPL(Combined Programming Language,.组合编程语言): CPL是一种在ALGOL60基础上更接近硬件的语言。CPL规 模大,实现困难。 BCPL(Basic Combined Programming Language,基本的组 合编程语言):BCPL是对CPL进行简化后的一种语言。 2024/10/28 2
2024/10/28 2 1.1 C语言概述 .1.1 C语言的起源与发展 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语言诞生后, UNX开始用B语言改写。 C语言:是在B语言基础上增加数据类型而设计出的一种语 言。C语言取BCPL的第二个字母。C语言诞生后,UNI区 很快用C语言改写,并被移植到其他计算机系统。C语言 是在20世纪70年代初问世的。1978年由美国电话电报公司 (AT&T)贝尔实验室正式发表了C语言。同时由 B.W.Kernighan和D.M.Ritchit合著了著名的THEC PROGRAMMING LANGUAGE一书。后来由美国国家标 准学会在此基础上制定了一个C语言标准,于1983年发表, 通常称之为ANSI C。 2024/10/28 3
2024/10/28 3 B语言:是对BCPL进一步简化所得到的一种很简单接近硬 件的语言。B语言取BCPL语言的第一个字母。B语言精练、 接近硬件,但过于简单,数据无类型。B语言诞生后, UNIX开始用B语言改写。 C语言:是在B语言基础上增加数据类型而设计出的一种语 言。C语言取BCPL的第二个字母。C语言诞生后,UNIX 很快用C语言改写,并被移植到其他计算机系统。C语言 是在20世纪70年代初问世的。1978年由美国电话电报公司 (AT&T)贝尔实验室正式发表了C语言。同时由 B.W.Kernighan和D.M.Ritchit合著了著名的THE C PROGRAMMING LANGUAGE一书。后来由美国国家标 准学会在此基础上制定了一个C语言标准,于1983年发表, 通常称之为ANSI C
早期的C语言主要是用于UNIX系统。由于C语言的强 大功能和各方面的优点逐渐为人们认识,到了20世纪80年 代,C开始进入其他操作系统,并很快在各类大、中、小 和微型计算机上得到广泛使用,成为当代最优秀的程序设 计语言之一。 目前最流行的C语言有以下几种: (1)Microsoft C或称MSC。 (2)Borland Turbo C或称Turbo C。 (3)AT&TC。 这些C语言版本不仅实现了ANSI C:标准,而且在此基 础上各自作了一些扩充,使之更加方便、完美。 2024/10/28
2024/10/28 4 早期的C语言主要是用于UNIX系统。由于C语言的强 大功能和各方面的优点逐渐为人们认识,到了20世纪80年 代,C开始进入其他操作系统,并很快在各类大、中、小 和微型计算机上得到广泛使用,成为当代最优秀的程序设 计语言之一。 目前最流行的C语言有以下几种: (1)Microsoft C或称MS C。 (2)Borland Turbo C或称Turbo C。 (3)AT&T C。 这些C语言版本不仅实现了ANSI C标准,而且在此基 础上各自作了一些扩充,使之更加方便、完美
1.1.2C语言的特点 C语言发展如此迅速,而且成为最受欢迎的语言之一,主要 因为它具有强大的功能。归纳起来C语言具有下列特点: 1.C是中级语言 它把高级语言的基本结构和语句与低级语言的实用性结合起 来。C语言可以像汇编语言一样对位、字节和地址进行操 作,它也可以直接访问内存的物理地址,进行位(bt)一 级的操作,还实现了对硬件的编程操作,因此C语言既可 用于系统软件的开发,也适合于应用软件的开发。 2024/10/28 5
2024/10/28 5 1.1.2 C语言的特点 C语言发展如此迅速,而且成为最受欢迎的语言之一,主要 因为它具有强大的功能。归纳起来C语言具有下列特点: 1.C是中级语言 它把高级语言的基本结构和语句与低级语言的实用性结合起 来。C语言可以像汇编语言一样对位、字节和地址进行操 作,它也可以直接访问内存的物理地址,进行位(bit)一 级的操作,还实现了对硬件的编程操作,因此C语言既可 用于系统软件的开发,也适合于应用软件的开发
■2.C是结构式语言 ■ C语言是以函数形式提供给用户的,这些函数可方便的调 用,并具有多种循环、条件语句控制程序流向,从而使程 序完全结构化。按模块化方式组织程序,层次清晰,易于 调试和维护。C语言的表现能力和处理能力极强。 ■3.C语言功能齐全 C语言具有丰富的运算符和数据类型,便于实现各类复杂 的数据结构,并引入了指针概念,可使程序效率更高。另 外C语言也具有强大的图形功能,支持多种显示器和驱动 器。而且计算功能、逻辑判断功能也比较强大,可以实现 决策目的。 2024/10/28 6
2024/10/28 6 ◼ 2.C是结构式语言 ◼ C语言是以函数形式提供给用户的,这些函数可方便的调 用,并具有多种循环、条件语句控制程序流向,从而使程 序完全结构化。按模块化方式组织程序,层次清晰,易于 调试和维护。C语言的表现能力和处理能力极强。 ◼ 3.C语言功能齐全 ◼ C语言具有丰富的运算符和数据类型,便于实现各类复杂 的数据结构,并引入了指针概念,可使程序效率更高。另 外C语言也具有强大的图形功能,支持多种显示器和驱动 器。而且计算功能、逻辑判断功能也比较强大,可以实现 决策目的
4.C语言适用范围大 C语言还有一个突出的优点就是适合于多种操作系统,如 DOS、UNI区,也适用于多种机型,广泛地移植到了各类 各型计算机上,从而形成了多种版本的C语言。 总之,C语言简洁、紧凑、实用、方便、移植性好、执行效 率高、处理能力强、结构化程度高,但对编程人员要求较 高,较难掌握,不够安全。 2024/10/28
2024/10/28 7 4.C语言适用范围大 C语言还有一个突出的优点就是适合于多种操作系统,如 DOS、UNIX,也适用于多种机型,广泛地移植到了各类 各型计算机上,从而形成了多种版本的C语言。 总之,C语言简洁、紧凑、实用、方便、移植性好、执行效 率高、处理能力强、结构化程度高,但对编程人员要求较 高,较难掌握,不够安全
1.2C语言源程序的基本结构 1.2.1相关知识 C语言是由函数组成,一个C语言程序必须包含一个 且仅有一个main函数,该函数是程序的入口,由main函 数开始调用其他函数,其他函数也可相互调用,但最终返 回主函数结束程序。 1.2.2程序范例 为了说明C语言源程序结构的特点,先看以下几个程 序。这几个程序由简到难,体现了C语言源程序在组成结 构上的特点。虽然有关内容还未介绍,但可从这些例子中 了解到组成一个C源程序的基本部分 2024/10/28 8
2024/10/28 8 1.2 C语言源程序的基本结构 1.2.1 相关知识 C语言是由函数组成,一个C语言程序必须包含一个 且仅有一个main函数,该函数是程序的入口,由main函 数开始调用其他函数,其他函数也可相互调用,但最终返 回主函数结束程序。 1.2.2 程序范例 为了说明C语言源程序结构的特点,先看以下几个程 序。这几个程序由简到难,体现了C语言源程序在组成结 构上的特点。虽然有关内容还未介绍,但可从这些例子中 了解到组成一个C源程序的基本部分
1.范例一 任务:显示指定的内容。 程序1-1: main() { printf("This is the first program \n"); 程序说明:main是主函数的函数名,表示这是一个主函数。 每一个C源程序都必须有且只能有一个主函数(main函 数)。函数调用语句,printf函数的功能是把要输出的内 容送到显示器显示。printf函数是一个由系统定义的标准 函数,可在程序中直接调用。 2024/10/28
2024/10/28 9 1.范例一 任务:显示指定的内容。 程序1-1: main() { printf(" This is the first program \n"); } 程序说明:main是主函数的函数名,表示这是一个主函数。 每一个C源程序都必须有且只能有一个主函数(main函 数)。函数调用语句,printf函数的功能是把要输出的内 容送到显示器显示。printf函数是一个由系统定义的标准 函数,可在程序中直接调用
2.范例二 任务:求输入数的正弦值。 程序1-2: #include≤math.h> /*include称为文件包含命令, 扩展名为.h的文件也称为头文件*/ #include main() /*定义主函数*/ { /*主函数开始*/ double x,s; /*定义两个实数变量,以 2024/10/28 10
2024/10/28 10 2.范例二 任务:求输入数的正弦值。 程序1-2: #include /*include称为文件包含命令, 扩展名为.h的文件也称为头文件*/ #include main() /*定义主函数*/ { /*主函数开始*/ double x, s; /*定义两个实数变量,以