《C语言实用程式设计基础教程》是2015年清华大学出版社的一本图书,作者是谢延红、李丽、郭长友、王付山、戎丽霞。
基本介绍
- 书名:C语言实用程式设计基础教程
- 作者:谢延红、李丽、郭长友、王付山、戎丽霞
- ISBN:9787302390343
- 定价:39元
- 出版社:清华大学出版社
- 出版时间:2015-5-6
前言
C语言是国内外各高校理工科专业的一门重要基础课程,是一些计算机相关专业的研究生入学考试科目之一,地位至关重要。
本书是山东省精品课程《信息技术基础实践》的研究成果,是在长期从事程式设计类课程教学、教研经验丰富的一线教师教学手稿的基础上修改、整理而成。在本系列教材的规划、编写、整理过程中,不仅对现有较经典的教材进行了充分调研,并多次邀请专家和程式设计类课程的一线教师参会论证,力求博採众长、定位準确、突出特色。
本书具有如下特点:
(1) 全书体系完整,重点突出,深入浅出,循序渐进,图文并茂,讲解透彻,剖析深入,案例丰富新颖。
(2) 关注例题之间的阶梯性和连贯性,所有例题均有程式设计思路分析,这不仅有效降低了学习难度,而且突出了算法思想设计,注重学生编程思维和编程能力的培养。
(3) 注重理论,突出实践。每章后面均有典型例题及程式分析,以实践的形式强化理论,突出易错点,为学生提供解题思路,并通过程式调试方法的详细讲解为实践提供有力保障。
(4) 以一个小型系统为案例,随着课程学习的不断深入逐步完善,最后形成一个功能完整的小型系统。本案例着力突出培养学生利用C语言分析问题、解决问题的能力。
(5) 全方位服务。为方便教师和读者使用,提供了配套的电子课件、例题源程式、习题答案、教学大纲、参考书目等。
全书内容共分为12章,主要内容包括概述、数据类型和表达式、顺序结构和常用函式、选择结构、循环结构、数组、函式和变数、指针、结构体与共同体、编译预处理、位运算及档案等。每章的开篇文字,说明本章的主要内容;每章后面有典型例题分析,帮助读者强化理论内容;全书设有一个综合案例将全书内容有机贯穿起来,使读者随着课程学习的不断深入,能走出局部,以全局的角度综合运用C语言知识点解决实际问题。
本书的编写得益于编写小组的鼎力合作,其中王文博、郭长友负责编写第1、2章,谢延红、宋秀芹负责编写第3~5章,鲁燕负责编写第6章,李天志、张建臣负责编写第7章,赵丽敏负责编写第8章,戎丽霞、杨光军负责编写第9、10章,王付山负责编写第11、12章和附录A、B,曹金凤、戎丽霞负责编写综合案例和附录C。全书由谢延红、李丽统稿并任主编。所有教师均参与了书稿的校稿和程式调试工作。本教材在编写过程中得到了德州学院信息管理学院的鼎力支持,参考了大量书籍、报刊和网际网路等参考文献,一些教师和学生也提出了宝贵的意见和建议,在此一併表示衷心的感谢。
由于编者水平有限,书中疏漏和不足在所难免,诚挚地希望专家和广大读者不吝赐教,提出宝贵意见和建议,我们会认真对待,以期不断改善教材质量。
编者
2015年1月
目录
第1章概述
1.1电脑程式设计语言的发展
1.2算法
1.2.1算法的主要特徵
1.2.2算法的描述方法
1.3C语言简介
1.3.1C语言发展历程
1.3.2C语言的特点
1.3.3C语言程式示例
1.3.4C语言程式书写约定
1.4C语言程式开发步骤
1.4.1C语言程式开发过程
1.4.2VC++ 6.0环境中C语言程式运行步骤
1.4.3VC++ 6.0环境中其他关键功能
1.5C语言程式的错误类型及调试方法
1.5.1编译错误及调试方法
1.5.2连结错误及调试方法
1.5.3运行错误及调试方法
1.5.4逻辑错误及调试方法
1.6综合案例
习题
第2章数据类型和表达式
2.1C语言字元集与词法规则
2.1.1C语言字元集
2.1.2C语言辞彙及其组成规则
2.2数据类型
2.2.1基本类型
2.2.2其他数据类型
2.3常量
2.3.1整型常量
2.3.2实型常量
2.3.3字元型常量
2.3.4字元串常量
2.3.5符号常量
2.4变数
2.4.1变数的定义
2.4.2变数赋初值
2.4.3常变数
2.5运算符和表达式
2.5.1运算符的优先权与结合性
2.5.2算术运算符和算术表达式
2.5.3赋值运算符与赋值表达式
2.5.4关係运算符和关係表达式
2.5.5逻辑运算符和逻辑表达式
2.5.6其他运算符与表达式
2.5.7数据的类型转换
2.6典型例题
2.7综合案例
习题
第3章顺序结构程式设计及常用函式
3.1C语句分类
3.2常用数据输出函式
3.2.1单字元输出函式putchar
3.2.2格式输出函式printf
3.3常用数据输入函式
3.3.1单字元输入函式getchar
3.3.2格式输入函式scanf
3.4其他常用函式
3.4.1常用数学函式
3.4.2常用字元函式
3.4.3其他常用工具函式
3.5典型例题
3.6综合案例
习题
第4章选择结构程式设计
4.1if条件语句
4.2条件表达式
4.3switch语句
4.4典型例题
4.5综合案例
习题
第5章循环结构程式设计
5.1while语句
5.2dowhile语句
5.3for语句
5.4循环语句的嵌套
5.5break语句和continue语句
5.5.1break语句
5.5.2continue语句
5.6典型例题
5.7综合案例
习题
第6章数组
6.1一维数组
6.1.1一维数组的定义
6.1.2一维数组的使用
6.1.3一维数组的初始化
6.2二维数组
6.2.1二维数组的定义
6.2.2二维数组的使用
6.2.3二维数组的初始化
6.3字元串
6.3.1字元串常量
6.3.2字元串与字元数组
6.3.3字元串的输入输出
6.3.4字元串处理函式
6.4典型例题
6.5综合案例
习题
第7章函式与变数
7.1函式定义
7.2函式的调用
7.2.1函式的调用形式
7.2.2函式的调用过程
7.2.3函式的嵌套调用
7.3函式原型声明
7.4函式的参数传递
7.4.1传值方式
7.4.2传址方式
7.5递归函式
7.6变数的作用域
7.6.1局部变数
7.6.2全局变数
7.7变数的存储类型
7.7.1自动变数
7.7.2静态变数
7.7.3暂存器变数
7.7.4外部变数
7.7.5变数汇总
7.8典型例题
7.9综合案例
习题
第8章指针
8.1指针与指针变数
8.1.1指针变数的基本概念
8.1.2指针变数的定义与初始化
8.1.3指针变数的使用
8.1.4二级指针
8.2指针与数组
8.2.1一维数组和指针
8.2.2二维数组和指针
8.2.3指向字元串的指针
8.3指针与函式
8.3.1指针变数作为函式参数
8.3.2指向函式的指针
8.3.3返回值为指针的函式
8.3.4main函式的参数
8.4典型例题
8.5综合案例
习题
第9章结构体与共用体
9.1结构体类型
9.1.1定义结构体类型
9.1.2结构体变数的定义
9.1.3结构体变数的使用
9.1.4结构体变数的初始化
9.1.5结构体变数的赋值
9.2结构体数组
9.2.1结构体数组的定义
9.2.2结构体数组的初始化
9.2.3结构体数组的使用
9.3结构体类型指针
9.3.1指向结构体变数的指针
9.3.2指向结构体数组的指针
9.4结构体与函式
9.4.1结构体变数作函式参数
9.4.2指向结构体变数(或数组)的指针作函式参数
9.4.3函式的返回值为结构体类型
9.5鍊表
9.5.1鍊表概述
9.5.2动态存储分配函式
9.5.3鍊表的基本操作
9.6共用体
9.6.1共用体类型的定义
9.6.2共用体类型变数的定义
9.6.3共用体变数的使用
9.7枚举类型
9.8typedef类型定义
9.9典型例题
9.10综合案例
习题
第10章编译预处理
10.1宏定义
10.1.1不带参数的宏定义
10.1.2带参数的宏定义
10.2档案包含
10.3条件编译
10.4典型例题
10.5综合案例
习题
第11章位运算
11.1位运算符
11.2位运算的套用
11.3位段及其套用
11.4典型例题
习题
第12章档案
12.1档案概述
12.2档案指针
12.3档案的打开与关闭
12.4档案的定位与检测
12.5档案的读写操作
12.5.1按字元方式档案读写函式fgetc和fputc
12.5.2按字元串方式档案读写函式fgets和fputs
12.5.3按格式化方式档案读写函式fscanf和fprintf
12.5.4按数据块方式档案读写函式fread和fwrite
12.5.5档案的随机读写
12.6典型例题
12.7综合案例
习题
附录AC语言常用库函式
附录B常用字元与ASCII代码对照表
附录C综合案例参考原始码
参考文献