网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 程序设计基础(算法与程序设计C语言版普通高校本科计算机专业特色教材精选)
分类
作者 徐正芹//赵文栋//彭来献//李艾静//王海
出版社 清华大学出版社
下载
简介
目录
第1章C语言初步介绍1
1.1几个例子1
1.2C语言的字符集与词汇4
1.2.1C语言的字符集4
1.2.2词汇4
1.3C程序的上机操作5
1.3.1启动Visual C++ 6.06
1.3.2集成开发环境介绍7
1.3.3一个程序的上机操作过程8
1.4习题14
第2章程序设计过程17
2.1程序设计概述17
2.1.1结构化程序设计17
2.1.2模块化程序设计的方法18
2.1.3面向对象的程序设计18
2.2程序设计语言19
2.2.1程序设计的基本步骤19
2.2.2算法及其表示20
2.2.3程序设计语言21
2.3程序的基本控制结构23
2.3.1顺序结构23
2.3.2选择结构23
2.3.3循环结构23
2.3.4子程序调用23程序设计基础(C语言版)目录2.4应用举例24
2.5习题25
第3章数据类型、运算符及表达式27
3.1数据和数据类型27
3.2常量28
3.2.1整型常量28
3.2.2实型常量28
3.2.3字符常量29
3.2.4字符串常量29
3.2.5符号常量30
3.3变量30
3.3.1整型变量30
3.3.2实型变量31
3.3.3字符型变量31
3.4赋值运算与算术运算32
3.4.1赋值运算32
3.4.2二元算术运算33
3.4.3自加、自减运算34
3.4.4复合赋值运算35
3.5变量赋初始值35
3.6类型转换36
3.6.1自动类型转换36
3.6.2强制类型转换37
3.7表达式37
3.7.1表达式求值37
3.7.2表达式语句39
3.8位运算39
3.8.1按位与运算40
3.8.2按位或运算40
3.8.3按位异或运算41
3.8.4按位取反运算41
3.8.5左移运算42
3.8.6右移运算42
3.9习题42
第4章顺序结构程序设计45
4.1编译预处理45
4.1.1宏定义45
4.1.2文件包含46
4.2字符输入输出函数47
4.2.1字符输入函数getchar48
4.2.2字符输出函数putchar48
4.3格式输入输出函数49
4.3.1格式输入函数scanf49
4.3.2格式输出函数printf51
4.4顺序结构程序设计56
4.4.1空语句和表达式语句56
4.4.2复合语句56
4.5应用举例57
4.6习题59
第5章选择结构程序设计61
5.1关系运算和逻辑运算61
5.1.1关系运算61
5.1.2逻辑运算62
5.2if语句63
5.2.1if语句的3种形式63
5.2.2条件运算67
5.3switch语句68
5.4应用举例70
5.5习题72
第6章循环程序设计75
6.1while循环语句75
6.2dowhile循环语句76
6.3for循环语句77
6.4循环的退出81
6.4.1break语句81
6.4.2continue语句82
6.4.3goto语句82
6.5应用举例84
6.6习题87
第7章数组91
7.1一维数组91
7.1.1一维数组的定义91
7.1.2一维数组的使用92
7.1.3一维数组的初始化93
7.2二维数组95
7.2.1二维数组的定义95
7.2.2二维数组的初始化95
7.2.3二维数组的引用96
7.3字符数组和字符串98
7.3.1字符数组的定义98
7.3.2字符串99
7.4应用举例102
7.5习题105
第8章函数107
8.1C程序与函数107
8.2函数的定义和说明109
8.2.1函数的定义109
8.2.2函数的说明112
8.3函数的调用113
8.3.1函数调用的格式113
8.3.2参数的传递114
8.4应用举例1117
8.5函数的嵌套调用与递归调用119
8.5.1函数的嵌套调用119
8.5.2函数的递归调用121
8.6作用域与存储类123
8.6.1作用域123
8.6.2存储类125
8.6.3内部函数与外部函数128
8.7应用举例2129
8.8习题132
第9章指针135
9.1指针概述135
9.1.1什么是指针135
9.1.2指针变量的定义136
9.1.3指针的运算136
9.2指针与函数参数139
9.3指针与数组141
9.3.1一维数组的指针141
9.3.2多维数组的指针146
9.3.3字符指针与字符串148
9.4应用举例151
9.5习题153
第10章结构、联合和枚举155
10.1结构的概念155
10.1.1结构类型的定义155
10.1.2结构变量的说明156
10.1.3结构变量的引用157
10.1.4结构变量的初始化158
10.2结构数组160
10.3指向结构的指针161
10.3.1指向结构的指针161
10.3.2结构指针作函数参数164
10.4动态数据结构165
10.4.1内存的动态分配和释放函数166
10.4.2链表166
10.5联合174
10.5.1联合的定义174
10.5.2联合变量的说明与引用175
10.6枚举176
10.7类型定义178
10.7.1基本数据类型的重新命名179
10.7.2用新类型名代替构造类型名179
10.7.3用新类型名定义数组和字符串180
10.8应用举例180
10.9习题184
第11章文件187
11.1C文件的概念187
11.1.1C语言文件的特点187
11.1.2二进制流和字符流188
11.1.3缓冲文件系统和非缓冲文件系统188
11.2文件指针189
11.3文件的打开与关闭190
11.3.1文件的打开——fopen函数190
11.3.2文件的关闭——fclose函数191
11.4文件的读写192
11.4.1字符读写函数——fputc和fgetc192
11.4.2字符串读写函数——fputs和fgets194
11.4.3数据块读写函数——fread和fwrite196
11.4.4格式化读写函数——fscanf和fprintf198
11.5文件的定位199
11.5.1rewind函数199
11.5.2ftell函数200
11.5.3fseek函数200
11.6输入输出重定向201
11.7应用举例203
11.8习题204
第12章上机实验205
实验1Visual C++系统与顺序结构程序设计205
实验2选择结构程序设计206
实验3循环结构程序设计207
实验4程序调试208
实验5数组215
实验6函数216
实验7指针218
实验8结构和枚举219
精彩页
第3章数据类型、运算符及表达式数据类型是高级程序设计语言中最重要的概念之一。数据和运算符是程序的基本要素,数据是程序处理的对象,运算符是对数据进行处理的具体描述。在C语言中,凡是数据都必有类型,变量在使用之前必先进行类型说明,这是两条必须遵循的规则。
本章重点: 掌握数据类型的说明与使用、常量与变量的表示方法、各种运算符的功能及其运算规则、表达式和语句的书写方法。
3.1数据和数据类型
数据是程序的必要组成部分,也是程序的处理对象。数据有常量和变量之分,常量是指程序运行过程中其值保持不变的量,而变量则是指程序运行过程中其值可以改变的量。
每个数据对象,不管是常量还是变量,都必须有确定的类型,这是因为数据类型规定了一个数据的可能取值范围、在内存中的存储方式以及它所能进行的运算。对于常量来说,它的类型可以由常量本身隐含确定,这将在3.2节作详细介绍。对变量来说,它的类型就要用专门的类型说明语句加以说明。图3.1给出了C语言的各种数据类型。
图3.1数据类型本章介绍C语言的基本数据类型,其他类型留待后面章节讨论。
3.2常量
C语言中的常量有3类: 数、字符和字符串。由于它们本身已隐含了数据类型,所以使用时不必事先进行类型说明,就可直接使用。
程序设计基础(C语言版)第3章数据类型、运算符及表达式3.2.1整型常量
整型常量又称整数,C语言中整型常量可以用3种数制来表示:
(1) 十进制整数,用人们习惯的十进制整数形式给出,如127、0、-12、+5等,其每个数字位可以是0~9。
(2) 八进制整数,是以0(数字0)开头的八进制数。例如,十进制数127,用八进制表示为0177。八进制数中的每个数字位只能使用数字0~7。
(3) 十六进制整数,是以0X(数字0与字母X,X大小写均可)开头的十六进制数。例如,十进制数127,用十六进制表示为0X7F。十六进制数的每个数字位可以是0~9和A~F,其中A~F表示十进制数值10~15。
在C语言中,整数的取值范围通常由机器的字长决定。例如字长为16位的计算机,一个整数用两个字节存储,因此十进制数的表示范围为-32 768~32 767;如果是无符号整数,其表示范围为0~65 535。若超过这个范围,C语言提供了一种长整型,用来扩大整数的取值范围。长整型数是一般整数的两倍长(4B),其取值范围为-2 147 483 648~2 147 483 647,无符号长整型数取值范围为0~4 294 967 295。C语言中,在整数的末尾加上字母l或L,就成了长整数,如128L、123456L。
十进制、八进制、十六进制常量用于不同场合。设计一般的应用程序时大多用十进制数;当设计系统程序时,有时要用八进制数或十六进制数。
3.2.2实型常量
实型常量又称浮点数或实数。在C语言中,实数只使用十进制。它有两种表示形式,即小数形式和指数形式。
小数形式由数字、小数点和(可能的)正负号组成,例如3.1416、-12.76、0.12、.12、12.、12.0都是C语言合法的实数。
指数形式由尾数部分、字母e或E和指数部分组成。例如十进制数320 000.0用指数法可表示为3.2e5,其中3.2称为尾数,5为指数,e也可用E表示。又如,-0.001 23可表示为-1.23E-3。需要注意,用指数形式表示实数,尾数部分不能为空,指数部分必须是整数。例如e-5、7.2e2.5都是不合法的实数。
在一般计算机系统中,一个实数在内存中占4B,双精度实数占8B。实数取值的绝对值范围约为10-38~1038,具有6~7位十进制有效数字,双精度实数具有15~16位十进制有效数字。
3.2.3字符常量
C语言中的字符常量是用一对单引号括起来的一个字符,例如'a'、''、'5'等都是合法的字符常量。
C语言的一个字符常量占据一个字节的存储空间,在该字节中存放的并不是字符本身,而是该字符在所在机器中采用的编码,也就是一个整数值。大多数系统采用ASCII编码字符集,在这种情况下,'a'的ASCII编码值为97,'0'的ASCII编码值为48。由于字符常量存储的是一个整数,因此它可以像整数一样参加数值运算。在C程序中,字符常量通常用于字符之间的比较。
C语言还使用一种特殊形式的字符常量,这就是以反斜线“\\\\”开头的转义字符序列。转义字符常用来表示ASCII字符集内的控制代码。例如前面用\\\
表示换行,\\\
实际上是一个字符,它的ASCII编码值为10。常见的转义字符如表3.1所示。表3.1转义字符
转义字符功能转义字符功能\\\
换行\\\\f走纸换页\\\\t横向跳格(即跳到下一个输出区)\\\\\\\\反斜线字符"\\\\"\\\\v竖向跳格\\\\'单引号(撇号)字符\\\\b退格\\\\ddd1~3位八进制数所代表的字符\\\
回车\\\\xhh1位或2位十六进制数所代表的字符
3.2.4字符串常量
字符串是用双引号括起来的字符序列。例如"China"就是一个字符串。双引号仅作定界符使用,不属于字符串本身的内容。
C语言中,字符串在内存中存储时,系统自动地在字符串的末尾增加一个ASCII编码值为0的字符,用以表示该字符串的结束。
导语
1.聚焦核心问题:聚焦解决“程序设计”的核心问题上,将C语言的有关语法有机结合到程序设计中,避免生硬枯燥的语法叙述,真正体现“程序设计”。
2. 增强针对性:增强“继续学习”的针对性,为其他编程语言和后继专业课程的学习奠定基础。
3. 增强实用性:不仅介绍编程的理论和方法,还特别强调通过上机实践提高学生的编程能力。以Visual C++ 6.0为基本开发环境,用一定的篇幅对Visual C++ 6.0的编程和调试环境做较深入的介绍,既能激发同学们的学习兴趣,更能为今后更高级开发技术的学习打下良好的基础。本书的例题和上机综合实验全部在Visual C++ 6.0环境下调试通过,为提高学生的实践能力提供帮助。
4. 强调编程技巧和方法:着重结构化程序设计的概念、方法和编程技巧,坚持“从现在就开始注重方法”的思想。第二部分的10个上机综合实验,内容包括问题的提出、编程思路、设计方法、程序代码、调试过程等详细介绍,用于提高学生的程序设计能力。
序言
出版说明在我国高等教育逐步实现大众化后
,越来越多的高等学校将会面向国民经济发展的
第一线,为行业、企业培养各级各类高级应用型
专门人才。为此,教育部已经启动了“高等学校
教学质量和教学改革工程”,强调要以信息技术
为手段,深化教学改革和人才培养模式改革。如
何根据社会的实际需要,根据各行各业的具体人
才需求,培养具有特色显著的人才,是我们共同
面临的重大问题。具体地,培养具有一定专业特
色的和特定能力强的计算机专业应用型人才则是
计算机教育要解决的问题。
为了适应21世纪人才培养的需要,培养具
有特色的计算机人才,急需一批适合各种人才培
养特点的计算机专业教材。目前,一些高校在计
算机专业教学和教材改革方面已经做了大量工作
,许多教师在计算机专业教学和科研方面已经积
累了许多宝贵经验。将他们的教研成果转化为教
材的形式,向全国其他学校推广,对于深化我国
高等学校的教学改革是一件十分有意义的事。
清华大学出版社在经过大量调查研究的基础
上,决定编写出版一套“普通高校本科计算机专
业特色教材精选”。本套教材是针对当前高等教
育改革的新形势,以社会对人才的需求为导向,
主要以培养应用型计算机人才为目标,立足课程
改革和教材创新,广泛吸纳全国各地的高等院校
计算机优秀教师参与编写,从中精选出版确实反
映计算机专业教学方向的特色教材,供普通高等
院校计算机专业学生使用。
本套教材具有以下特点:
1. 编写目的明确
本套教材是在深入研究各地各学校办学特色
的基础上,面向普通高校的计算机专业学生编写
的。学生通过本套教材,主要学习计算机科学与
技术专业的基本理论和基本知识,接受利用计算
机解决实际问题的基本训练,培养研究和开发计
算机系统,特别是应用系统的基本能力。2. 理
论知识与实践训练相结合
根据计算学科的三个学科形态及其关系,本
套教材力求突出学科理论与实践紧密结合的特征
,结合实例讲解理论,使理论来源于实践,又进
一步指导实践得到自然的体现,使学生通过实践
深化对理论的理解,更重要的是使学生学会理论
方法的实际运用。
3. 注意培养学生的动手能力
程序设计基础(C语言版)出版说明每种教材
都增加了能力训练部分的内容,学生通过学习和
练习,能比较熟练地应用计算机知识解决实际问
题。既注意培养学生分析问题的能力,也注重培
养学生解决问题的能力,以适应新经济时代对人
才的需要,满足就业要求。
4. 注重教材的立体化配套
大多数教材都将陆续配套教师用课件、习题
及其解答提示,学生上机实验指导等辅助教学资
源,有些教材还提供能用于网上下载的文件,以
方便教学。
由于各地区各学校的培养目标、教学要求和
办学特色均有所不同,所以对特色教学的理解也
不尽一致,我们恳切希望大家在使用教材的过程
中,及时地给我们提出批评和改进意见,以便我
们做好教材的修订改版工作,使其日趋完善。
我们相信经过大家的共同努力,这套教材一
定能成为特色鲜明、质量上乘的优秀教材,同时
,我们也希望通过本套教材的编写出版,为“高
等学校教学质量和教学改革工程”做出贡献。
清华大学出版社前言“程序设计基础”是高
等学校理工类专业学生的基础课程。本书以C/C
++语言作为基本工具,以程序设计思想与方法作
为核心内容,以动手编程解决实际问题能力的培
养作为最终目标。通过本书,不仅要使学生掌握
程序设计语言的语法与结构,更重要的是逐步培
养学生用计算机解决问题的思维、习惯与方法。
本书的读者对象是没有编程基础的初学者,
他们通过本书所能接触到的也只是一些简单的程
序,但程序结构的设计和编程习惯的培养却正是
从初学阶段开始形成的,因此本书对概念、算法
、语法以及例题的讲解都强调规范化、结构化,
引导读者适当地模仿,从开始就养成规范编程的
习惯。
本书有以下特色:
(1) 本书以程序设计为核心,将C语言的
有关语法有机结合到程序设计实例中,避免了生
硬枯燥的语法介绍。
(2) 突出针对性。这主要是指“继续学
习”的针对性。C语言的后续课程主要有两类:
一类是其他编程语言课程;另一类是后续专业课
程,包括“数据结构”“数据库”“算法分析”
等。在教学实践中经常出现这种情况: 作为这
些课程基础知识应该提前掌握的知识,学生在C
语言的学习中并未认真掌握,如参数的传递方式
、指针的使用和内存的动态申请等,需要重新学
,给教学带来了很大的不便。本书引入了数据结
构中的简单算法和基础内容作为讲解实例或应用
实例,使计算机相关专业学生为将来的专业课程
学习打好基础,也使非计算机专业的学生有能力
进一步拓展知识。
(3) 注重实用性。本书不仅介绍编程的
理论和方法,还通过上机实践来提高学生的编程
能力。本书以Visual C++6.0为基本开发环境,
用一定的篇幅对Visual C++6.0的编程和调试环
境作了较深入的介绍,既能激发学生的学习兴趣
,更能为学生今后学习高级开发技术打下良好的
基础。本书的例题和上机实验全部在Visual C
++6.0环境下调试通过。(4) 强调编程技巧和
方法。本书强调结构化程序设计的概念、方法和
编程技巧。10个上机实验内容包括问题的提出、
编程思路、设计方法、程序代码、调试过程等,
以帮助学生提高程序设计能力。
(5) 本书将编程学习过程中容易出错的
地方用黑框标出,重点加以说明,使初学者避免
了在学习过程中“踩雷”。
本书分为两部分。
第一部分是C语言程序设计,系统地介绍了
程序设计的方法及C语言的基本语法和基本技巧
,是本书的主体部分,共11章。其中带*的内容
为扩展内容,在今后的学习中应用较少,跳过这
些部分,不会对其他内容的学习带来影响,可以
等将来用到时再回来查阅。各章内容如下: 第1
章通过几个简单的示例程序,对C语言程序作初
步介绍;第2章介绍程序设计方法、程序设计过
程、程序设计语言的概念,并简要介绍结构化程
序的几种基本控制结构;第3章介绍数据类型、
常量与变量、运算符与表达式的概念;第4章介
绍常用的输入输出函数和顺序结构程序设计;第
5章介绍关系运算及选择结构程序设计;第6章介
绍循环结构程序设计;第7章介绍数组的定义、
引用、初始化及数组的应用;第8章介绍函数的
使用、参数的传递及变量的作用域等内容;第9
章介绍指针的概念和运算、指针在函数调用中的
作用及指针与数组的关系等内容;第10章介绍结
构、联合和枚举等类型;第11章介绍与文件操作
相关的内容。
第二部分是上机实验,包括10次实验的内
容。实验内容的安排基本与第一部分的各章相对
应。一般每次实验安排两三个不同难度的题目,
可以根据上机时间有选择地安排其中的部分题目

本书主要作为高等学校理工类专业的程序设
计基础课程教材,也可作为计算机爱好者学习C
语言的参考书。本书电子教案可从清华大学出版
社网站www.tup.com.cn下载。限于作者水平,
书中难免会存在一些不足之处,敬请读者批评指
正。
作者
内容推荐
本书根据初学者的认知特点,紧贴教学、循序渐进、由浅入深地讲解了C语言的知识。
全书共分为两个部分:第一部分是C语言程序设计,共11章,系统地对C语言的基本语法和基本技巧进行介绍;第二部分是上机实验,内容包括编程思路、设计方法、程序代码、调试过程等,用于提高学生的实际程序设计能力。本书以C程序实例作为引导,通过典型例题对重点知识进行强化,符合程序设计的学习规律。本书的例题和上机综合实验全部在Visual C++ 6.0环境下调试通过。
本书适合作为高等学校理工类专业程序设计基础课程教材,也可供程序设计初学者自学参考。
随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/2/22 5:34:12