欢迎来到天天文库
浏览记录
ID:42190232
大小:622.51 KB
页数:33页
时间:2019-09-10
《程序设计与C语言》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言程序设计张芳主编(王维强辅助设计)北京:电子工业出版社出版7/22/20211C语言程序设计C语言程序设计CProgrammer数学信息科学学院副教授青岛大学张芳7/22/20212C语言程序设计院楼二层软件教研室电话:13792871365EMAIL:zhangfang@qdu.edu.cn如何与老师联系?7/22/20213C语言程序设计第一章程序设计与C语言1.1C语言概述1.2C语言的程序结构1.3术语1.4C语言的上机步骤1.5算法简介习题(一)及参考答案与解析7/22/20214C语言程序设计1.1C语言概述程序设计语言现在已经发展到了第四代。它的发展过程大体上是这样的:7
2、/22/20215C语言程序设计(1)机器语言也有的称为CPU的指令系统。大约在20世纪50年代,人们开始用由二进制数“0”、“1”构成的指令码编写程序。程序的可读性很差,并且难于修改、扩充和移植。因此,当时的编程人员只是极少数计算机专业技术人员,并且程序只用于特定类型的计算机和特定的用途。这也使得其运算效率是所有语言中最高的。人们习惯上把机器语言称为第一代程序语言。(2)汇编语言也称为符号语言,是用诸如:“ADD”(代表加法)、“MOV”(代表数据传送)等助记符号(一些简洁的英文字母、符号串)描述的指令系统。虽然与机器语言相比,有了较大的进步(减轻了使用机器语言编程的痛苦,人们很容易读懂并
3、理解程序在干什么,纠错及维护都变得方便了),但仍未完全摆脱具体机型的限制,且程序的可读性比较差,也不容易修改、扩充和移植。而此时人们设计出的具有用一条指令来描述若干条指令功能的宏汇编,是程序语言发展史上的一个巨大进步。由于作为第二代程序语言的汇编语言和机器语言一样,都是面向计算机硬件的,所以它们又被称为面向机器的语言。(3)面向过程的高级语言也有人称之为算法语言,它主要面向解题的过程,这种语言接近于数学语言或人的自然语言,同时又不依赖于计算机硬件,编出的程序能在所有机器上通用。这些语言大约产生于20世纪60年代,主要有BASIC、C、FORTRAN、PASCAL和C++等,人们称之为第三代程
4、序语言。(4)非过程化的高级语言使用过程化的语言解题。随着计算机图形学的发展,面向对象的程序设计方法和可视化软件开发越来越流行,这为非计算机专业人员提供了极大地方便。象用C语言开发的FOXBASE+等非过程化的高级语言,被称之为第四代程序语言。7/22/20216C语言程序设计现在使用的大多数程序是用高级程序(过程)语言编写的,而C语言就是其中的“顶梁柱”。C语言是一种编译型程序语言,其前身是60年代开发的BSPC语言,当时就能够处理与机器本身数据类型相近的数据,而且具有与内存地址对应的指针处理方式。到了1970年在继承和发展BCPC语言这些特点的基础上,又提出了“B语言”,小型机的UNIX
5、操作系统就是使用B语言记述和开发的。此后在进行UNIX操作系统的开发工作中,对B语言做了进一步完善,美国AT&T公司贝尔实验室的D.M.Ritchie在1972年推出了一种新型的程序语言,这就是C语言。自从C语言问世以来,就表现出了较强的生命力。它从最初的UNIX操作系统的记述语言,已迅速发展成为广泛应用的通用程序语言。过去仅在小型机领域中使用的C语言,随着16位和32位微机的发展和普及,正成长为微机的主要程序语言之一,当前某些机大中型中也在使用C语言。C语言有以下几个基本特点:7/22/20217C语言程序设计(1)C语言是处于汇编语言和高级语言之间的一种记述性程序语言,又被称为中级计算机
6、语言。中级语言并没有贬义,并不意味着它功能差,难以使用,或者比BASIC、PASCAL那样的高级语言原始,也不意味着它与汇编语言相似,会给使用者带来类似的麻烦。C语言之所以被称为中级语言,是因为它把高级语言的成分同汇编语言的功能结合起来了,也就是说C语言是比较靠近面向硬件和系统的语言,象汇编语言那样可以直接访问硬件的功能。允许对位,字节和地址这些计算机中的基本成分进行操作,又有高级语言面向用户,容易记忆,便于阅读和书写的优点。(2)C语言具有简洁的程序表示和书写格式,以及强大的功能。用C语言编写的程序往往短小精悍,功能强大,不仅可以用于科学计算、信息处理,还可以用于系统软件和应用软件的开发。
7、(3)C语言程序具有较强的可移植性,也就是说可将编写的软件不需要做较大修改就可以从一种机型移到另一种机型上运行。由于C语言的语句中,没有依存于硬件的输入输出(I/O)语句。程序的I/O功能是通过调用I/O函数来实现的,而这些函数是由系统提供的独立于C语言的程序模块库。因此C语言本身并不依存于机器的硬件系统,从而便于在硬件结构不同的机型间实现程序的移植。(4)C语言是一种结构化的程序设计语言,即:程序的逻辑结构
此文档下载收益归作者所有