21世纪高等学校计算机规划教材——精品系列

C语言实用教程

分享 推荐 0 收藏 0 阅读 1.8K
徐秋红 , 王全红 (编著) 978-7-115-21871-1

关于本书的内容有任何问题,请联系 刘博

作者文笔好,认真负责,写作经验丰富。
参考的外版教材已得道市场认可。
¥32.00 ¥27.20 (8.5 折)
立即购买 申请样书

内容摘要

  本书是介绍C语言程序内容和学习C语言程序设计方法的教学用书,它由浅入深地讲解了如何使用程序设计思想分析和理解问题,如何利用C语言程序设计方法处理和解决实际问题。
  本书将C语言的学习分为12章,第1~3章介绍了C语言的基本概念和基本常识;第4~5章主要介绍了C语言的基本程序设计方法;第6~9章介绍了C语言的构造数据类型和指针概念,及其基本操作方法;第10~12章为C语言的提高内容,读者可以根据自己的学习情况有选择地学习此3章的部分或全部内容。
  为了方便读者学习,每章后面都有总结和概念问答,并根据当前章节内容,提供了精心设计的小测验和练习。
  本书适用于高等院校的计算机专业或相关专业学习C语言程序设计的学生使用,也可以作为计算机爱好者的自学参考书。

目录

目 录

第 1章 C语言程序设计初步 1
1.1 程序与程序语言 1
1.2 C语言简史 2
1.3 使用C语言的理由 2
1.4 编程前的准备工作 3
1.5 程序开发周期(程序设计的步骤) 4
1.5.1 创建源程序 4
1.5.2 编译源程序 4
1.5.3 通过链接建立可执行文件 5
1.5.4 运行程序 5
1.6 第 一个C语言程序 6
1.6.1 常见的编译错误 7
1.6.2 链接程序时易出现的错误消息 7
1.7 总结 8
1.8 问与答 8
1.9 作业 8
1.9.1 小测验 8
1.9.2 练习 9

第 2章 C语言程序的组成部分 10
2.1 简单C语言程序的组成 10
2.1.1 main()函数 11
2.1.2 #include编译预处理指令 11
2.1.3 变量声明语句 11
2.1.4 函数原型的声明语句 12
2.1.5 程序语句 12
2.1.6 函数定义 12
2.1.7 程序注释 13
2.1.8 使用花括号 13
2.2 关键字与标识符 13
2.2.1 关键字 13
2.2.2 标识符 14
2.3 计算机内存 14
2.4 使用变量存储信息 14
2.4.1 变量和变量名 15
2.4.2 数值变量的类型 15
2.4.3 变量声明 17
2.4.4 typedef关键字 18
2.4.5 初始化变量 18
2.5 使用常量 19
2.5.1 字面常量 19
2.5.2 为字面常量定义符号名 22
2.5.3 使用关键字const声明变量具有恒定的值 23
2.6 信息读写基础 24
2.6.1 利用printf()函数在屏幕上显示信息 24
2.6.2 使用puts()函数显示消息 29
2.6.3 使用scanf()函数输入数值数据 29
2.6.4 专门的字符输入输出函数 31
2.7 总结 32
2.8 问与答 33
2.9 作业 34
2.9.1 小测验 34
2.9.2 练习 35

第3章 语句、表达式和运算符 37
3.1 语句 37
3.1.1 空白对语句的影响 37
3.1.2 创建空语句 38
3.1.3 复合语句 38
3.2 表达式 38
3.3 运算符 39
3.3.1 赋值运算符、赋值表达式和赋值语句 39
3.3.2 常用的算术运算符 40
3.3.3 复合赋值运算符 41
3.3.4 自增、自减运算符 42
3.3.5 算术运算符的优先级和结合性 43
3.3.6 数据类型的转换 44
3.3.7 逗号运算符 45
3.4 关系运算符和选择语句 47
3.4.1 关系运算符 47
3.4.2 if语句 47
3.4.3 else子句 50
3.5 逻辑运算符 52
3.6 条件运算符 54
3.7 总结 55
3.8 问与答 55
3.9 作业 56
3.9.1 小测验 56
3.9.2 练习 57

第4章 程序流程的控制 59
4.1 算法 59
4.1.1 使用伪码表示算法 60
4.1.2 使用流程图表示算法 60
4.1.3 使用N-S流程图表示算法 61
4.2 顺序结构程序设计 62
4.3 选择结构程序设计 63
4.3.1 选择结构形式的控制语句 63
4.3.2 switch结构与break语句 65
4.4 循环结构程序设计 69
4.4.1 while语句 70
4.4.2 do…while语句 72
4.4.3 for语句 76
4.5 嵌套循环 80
4.6 continue语句和break语句对循环的影响 83
4.6.1 break语句 83
4.6.2 continue语句 84
4.7 goto语句 85
4.8 死循环 88
4.9 总结 90
4.10 问与答 91
4.11 作业 92
4.11.1 小测验 92
4.11.2 练习 92

第5章 使用函数封装代码 96
5.1 什么是函数 96
5.1.1 函数的定义 97
5.1.2 函数的用法 97
5.2 函数的工作原理 98
5.3 函数和结构化程序设计 99
5.3.1 结构化程序设计的特点 99
5.3.2 结构化程序设计 99
5.3.3 自顶向下、逐步细化的设计方法 100
5.4 编写函数 100
5.4.1 函数头 100
5.4.2 函数的返回类型 101
5.4.3 函数名 101
5.4.4 函数的参数列表 101
5.4.5 函数体 103
5.4.6 函数原型 105
5.5 标准库函数和头文件 105
5.6 调用函数 106
5.6.1 函数调用的形式 107
5.6.2 函数的传值调用 107
5.6.3 调用随机函数 108
5.6.4 调用exit()函数 113
5.6.5 递归调用函数 113
5.7 函数的位置 115
5.8 变量的作用域 116
5.8.1 外部变量 117
5.8.2 局部变量 119
5.9 总结 122
5.10 问与答 123
5.11 作业 124
5.11.1 小测验 124
5.11.2 练习 124

第6章 数值型数组 127
6.1 为什么要引入数组 127
6.1.1 一维数组 128
6.1.2 一维数组元素 128
6.1.3 多维数组 131
6.2 命名和声明数组 132
6.2.1 初始化数组 134
6.2.2 初始化多维数组 134
6.2.3 数组的字节长度的计算 135
6.3 数值数组的常用操作 136
6.4 总结 140
6.5 问与答 140
6.6 作业 141
6.6.1 小测验 141
6.6.2 练习 141

第7章 指针 143
7.1 指针是什么 143
7.1.1 内存单元地址 143
7.1.2 创建指针变量 143
7.2 指针和简单变量 144
7.2.1 声明指针 144
7.2.2 初始化指针 145
7.2.3 使用指针 145
7.2.4 指针与变量类型 147
7.3 指针和数组 148
7.3.1 数组元素的存储 148
7.3.2 数组名与指针 149
7.3.3 应用指向数组的指针变量 150
7.4 指针的运算 151
7.5 指针在函数参数传递中的应用 153
7.5.1 数组名作为函数的参数 153
7.5.2 指针作为函数的参数 156
7.5.3 指针作为函数的返回值 160
7.6 总结 161
7.7 问与答 161
7.8 作业 162
7.8.1 小测验 162
7.8.2 练习 162

第8章 字符和字符串 164
8.1 字符和字符变量 164
8.1.1 字符的存储形式 164
8.1.2 字符处理函数 165
8.2 字符串和字符数组 166
8.2.1 字符数组 166
8.2.2 初始化字符数组 166
8.3 字符串和指针 167
8.4 不存储在数组中的字符串 167
8.4.1 编译时分配字符空间 168
8.4.2 动态分配内存空间 168
8.4.3 使用malloc()函数 169
8.5 显示字符串 171
8.6 从键盘读取字符串 172
8.6.1 使用gets()函数接收字符串 172
8.6.2 使用scanf()函数输入字符串 175
8.7 常用的字符串处理函数 176
8.7.1 确定字符串的长度 176
8.7.2 复制字符串 177
8.7.3 拼接字符串 179
8.7.4 比较字符串 179
8.8 总结 184
8.9 问与答 184
8.10 作业 185
8.10.1 小测验 185
8.10.2 练习 185

第9章 结构体、共用体和typedef 183
9.1 什么是结构体 183
9.2 简单结构体 184
9.2.1 定义结构体 184
9.2.2 声明结构体变量 185
9.2.3 引用结构体变量的成员 186
9.2.4 结构体变量的初始化 187
9.2.5 结构体变量的存储及长度 189
9.3 包含其他结构体的结构体 189
9.4 结构体数组 191
9.5 结构体和指针 193
9.5.1 指针作为结构体的成员 193
9.5.2 创建指向结构体的指针 194
9.5.3 使用结构体指针和结构体数组 197
9.6 结构体和函数 199
9.7 共用体 202
9.7.1 定义、声明和初始化共用体 202
9.7.2 引用共用体的成员 203
9.8 使用typedef为已有的数据类型建立别名 205
9.9 总结 205
9.10 问与答 206
9.11 作业 206
9.11.1 小测验 206
9.11.2 练习 207

第 10章 指针进阶 209
10.1 声明和使用指向指针的指针 209
10.2 指针和多维数组 210
10.2.1 指针与多维数组的关系 210
10.2.2 指向多维数组的指针变量的声明和引用 212
10.3 指针数组 213
10.3.1 回顾字符串与指针的关系 214
10.3.2 声明和使用char型指针数组 214
10.4 指向函数的函数指针 217
10.4.1 声明一个函数指针 218
10.4.2 初始化和引用函数指针 218
10.5 链表 221
10.5.1 链表的基本概念 221
10.5.2 操纵链表时常用的几种动态内存分配函数 222
10.5.3 创建链表和向链表中添加新结点 223
10.5.4 从链表中删除一个结点 228
10.6 总结 235
10.7 问与答 236
10.8 作业 236
10.8.1 小测验 236
10.8.2 练习 237

第 11章 文件 239
11.1 文件的基本概念 239
11.1.1 将字符串“Hello Word!”写入一个磁盘文件 239
11.1.2 文件与流 240
11.1.3 文件的类型 240
11.1.4 文件名 240
11.1.5 文件缓冲区 241
11.1.6 文件指针 241
11.1.7 标准文件 242
11.1.8 文件操作 242
11.2 打开文件和关闭文件 243
11.2.1 打开文件 243
11.2.2 关闭文件 244
11.2.3 刷新文件缓冲区 244
11.3 读写文件数据 245
11.3.1 字符的输入和输出 245
11.3.2 以格式化方式读写文件 248
11.3.3 检测文件尾 250
11.3.4 二进制文件的输入和输出 252
11.4 顺序文件存取和随机文件存取 254
11.4.1 rewind()函数 255
11.4.2 ftell()函数 256
11.4.3 fseek()函数 257
11.5 实用的文件处理方法 259
11.5.1 利用库函数remove()删除文件 259
11.5.2 利用rename()函数修改文件名 260
11.5.3 建立带行号的C语言源程序 260
11.6 总结 262
11.7 问与答 262
11.8 作业 263
11.8.1 小测验 263
11.8.2 练习 263

第 12章 编译器的用法 265
12.1 设计和运行含有多个源代码文件的C语言程序 265
12.1.1 什么情况下建立含有多个源代码文件的C语言程序 265
12.1.2 设计含有多个源代码文件的C语言程序的过程 265
12.1.3 设计和组成模块的基本原则 267
12.1.4 外部变量在模块化程序设计中的作用 267
12.2 常用的编译预处理指令 268
12.2.1 宏定义 268
12.2.2 预处理指令#include 270
12.2.3 条件编译指令 271
12.2.4 预处理指令#undef 275
12.3 使用命令行参数 275
12.4 总结 278
12.5 问与答 279
12.6 作业 279
12.6.1 小测验 279
12.6.2 练习 280

附录A 字符ASCII码对照表 281
附录B 运算符的优先级 285
附录C C语言标准库中的常用函数 286
附录D 部分作业的参考答案 292

参考文献 302

读者评论

赶紧抢沙发哦!

我要评论

同系列书

  • 计算机图形学实用教程(第3版)

    苏小红 李东 唐好选 赵玲玲

    全书由12 章组成,内容主要包括绪论、交互式计算机图形处理系统、基本图形生成算法、自由曲线和曲面、图形变换...

    ¥49.00
  • 软件工程——理论与实践

    吕云翔 王昕鹏 邱玉龙

      本书从结构化方法和面向对象方法两方面介绍软件工程的基本概念、原理和方法,并用一个案例贯穿每一章的实践部分,...

    ¥36.00
  • 算法设计

    郑宇军 石海鹤 陈胜勇

      本书以设计策略为主线,循序渐进地介绍了经典算法设计(包括分治、动态规划、贪心、回溯、迭代改进等算法)、NP...

    ¥32.00
  • SQL Server 数据库教程(2008版)

    郑阿奇 刘启芬 顾韵华

      本书介绍SQL Server 2008数据库管理系统,主要内容包含3个部分:第一部分是数据库基础部分;第二...

    ¥42.00
  • 数据库原理及应用(第2版)

    何玉洁 刘福刚 于绍娜 余阳 张荣梅

      本书由11章、2个附录组成,主要内容包括关系数据库基础、SQL语言、关系数据理论、数据库设计、事务与并发控...

    ¥35.00

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部