图书详情 | 《C语言程序设计》
图书分类 一 〉 一 〉
本书可免费申请样书

C语言程序设计

王曙燕 著;

2020年8月

西安电子科技大学出版社

新华国采教育网络科技有限责任公司 折后价:¥66.00 定价:¥66.00
  • 西安电子科技大学出版社
  • 9787560658025
  • 1版
  • 349559
  • -
  • 平装
  • 16开
  • 2020年8月
  • 3000
  • 706
  • 472
  • 5606.0
  • -
  • -
  • -
  • TP312.8
  • 自动化技术、计算技术
  • 本科教材1
  • 初版
  • -
  • -
  • -
内容简介:
本书主要介绍C语言的基本概念、基本语法和基本程序结构,内容包括概述,基本数据类型、运算符及表达式,简单的C程序设计,选择分支结构程序设计,循环结构程序设计,指针与数组,函数,结构体与共用体,指针与链表,编译预处理和位运算及混合编程,文件,C++面向对象程序设计,C语言开发环境。
全书共13章,内容编排合理,通俗易懂,注意分散难点,使读者在掌握C语言基本知识的同时,逐步具备其分析问题、解决问题的能力,进而提高其实际的程序设计能力。全书配有设计精美、内容丰富的视频资源,读者可以直接扫码观看。
本书既可作为高等院校各专业C语言程序设计课程的教材,也可作为工程技术人员和计算机爱好者的参考资料。
目录
第1章 概述 1
1.1 程序设计语言 1
1.1.1 计算机语言 2
1.1.2 程序设计语言的发展 2
1.2 C程序设计语言 3
1.2.1 C语言的发展历史 3
1.2.2 C语言的标准与版本 4
1.2.3 C语言的特点 4
1.3 C语言的基本语法成分 5
1.3.1 字符集 5
1.3.2 标识符 5
1.3.3 运算符 7
1.4 C语言程序的组成 7
1.4.1 简单的C程序介绍 7
1.4.2 C语言程序的结构 9
1.4.3 C程序的书写 10
1.5 程序设计的一般过程 11
1.5.1 问题分析 12
1.5.2 算法设计 12
1.5.3 编写程序 13
1.5.4 调试与测试 13
1.5.5 整理文档 13
习题1 14
第2章 基本数据类型、运算符及
 表达式 15
2.1 C语言基本数据类型 15
2.1.1 数据类型 15
2.1.2 C语言数据类型简介 15
2.2 常量 16
2.2.1 整型常量 16
2.2.2 实型常量 17
2.2.3 符号常量 17
2.2.4 字符型常量 18
2.3 变量 20
2.3.1 变量名 20
2.3.2 变量类型 20
2.3.3 变量值 24
2.4 运算符及表达式 25
2.4.1 C运算符简介 25
2.4.2 算术运算符与算术表达式 26
2.4.3 赋值运算符与赋值表达式 28
2.4.4 关系运算符与关系表达式 30
2.4.5 逻辑运算符与逻辑表达式 31
2.4.6 条件运算符与条件表达式 33
2.4.7 逗号运算符与逗号表达式 35
2.4.8 不同类型数据间的混合运算与
类型转换 36
习题2 37
第3章 简单的C程序设计 40
3.1 典型题例 40
3.2 算法 41
3.2.1 算法的概念 41
3.2.2 算法的评价标准 42
3.2.3 算法的表示 42
3.3 结构化程序设计的方法 44
3.4 程序的基本结构 45
3.4.1 顺序结构 46
3.4.2 选择结构 46
3.4.3 循环结构 47
3.5 顺序结构程序设计 48
3.6 数据的输入与输出 49
3.6.1 C语言中数据的输入与输出 49
3.6.2 字符数据的输入与输出 50
3.6.3 格式的输入与输出 52
3.7 计算思维 59
3.8 C程序的上机步骤及基本调试技术 62
3.8.1 C程序的上机步骤 62
3.8.2 C语言的上机环境 63
3.8.3 C程序的基本调试技术 63
3.9 典型题例分析与实现 64
习题3 66
第4章 选择分支结构程序设计 68
4.1 典型题例 68
4.2 二路分支——if语句 69
4.2.1 if语句的一般形式 69
4.2.2 if语句的嵌套 77
4.3 多路分支——switch语句 81
4.3.1 switch语句的一般形式 81
4.3.2 switch语句的嵌套 84
4.4 程序测试 85
4.4.1 静态测试和动态测试 85
4.4.2 黑盒测试、白盒测试和灰盒测试 86
4.4.3 自动化测试和手动测试 86
4.4.4 阶段测试 87
4.5 典型题例分析与实现 88
习题4 94
第5章 循环结构程序设计 97
5.1 典型题例 97
5.2 while语句 97
5.3 do-while语句 100
5.4 for语句 102
5.5 goto语句 105
5.6 循环的嵌套 107
5.7 循环结束语句 109
5.7.1 continue语句 109
5.7.2 break语句 110
5.8 典型题例分析与实现 112
5.9 循环语句小结 119
习题5 120
第6章 指针与数组 122
6.1 典型题例 122
6.2 地址和指针的概念 123
6.2.1 变量的内容和变量的地址 123
6.2.2 直接访问和间接访问 124
6.2.3 指针的概念 125
6.3 指针变量 125
6.3.1 指针运算符 125
6.3.2 指针变量的定义 127
6.3.3 指针变量的引用 129
6.4 一维数组 130
6.4.1 一维数组的定义和初始化 130
6.4.2 一维数组元素的引用 132
6.4.3 一维数组应用举例 132
6.5 二维数组 137
6.5.1 二维数组的定义和初始化 137
6.5.2 二维数组元素的引用 139
6.5.3 二维数组应用举例 141
6.6 字符数组 148
6.6.1 一维字符数组的定义和引用 148
6.6.2 字符数组的输入与输出 149
6.6.3 字符串处理函数 151
6.6.4 二维字符数组 154
6.6.5 字符数组应用举例 155
6.7 指针与数组 157
6.7.1 指向数组元素的指针 157
6.7.2 字符指针、字符数组和字符串 160
6.7.3 地址越界问题 163
6.7.4 指针数组 164
6.7.5 多维数组和指向分数组的指针 165
6.7.6 动态数组 168
6.8 典型题例分析与实现 171
习题6 176
第7章 函数 180
7.1 典型题例 180
7.2 概述 181
7.2.1 C程序的基本结构 181
7.2.2 函数分类 183
7.3 函数的定义 183
7.4 函数的调用与返回值 185
7.4.1 函数调用的一般形式 185
7.4.2 函数调用的方式 185
7.4.3 函数的返回值 187
7.5 函数的参数 188
7.5.1 形式参数和实际参数 188
7.5.2 函数参数 190
7.5.3 引用传递 195
7.6 函数声明和函数原型 197
7.7 函数的嵌套调用 199
7.8 函数的递归调用 200
7.9 变量的作用域 205
7.9.1 局部变量 205
7.9.2 全局变量 206
7.10 变量的存储类型 208
7.10.1 自动变量 208
7.10.2 静态变量 209
7.10.3 寄存器变量 211
7.10.4 外部变量 212
7.10.5 存储类型小结 213
7.11 内部函数和外部函数 213
7.11.1 内部函数 214
7.11.2 外部函数 214
7.12 指针与函数 215
7.12.1 返回指针值的函数 215
7.12.2 指向函数的指针变量 216
7.12.3 指向函数的指针变量作为函数
参数 219
7.13 多文件程序的运行 220
7.14 典型题例分析与实现 221
习题7 232
第8章 结构体与共用体 238
8.1 案例引入 238
8.2 结构体类型定义 238
8.3 结 构 体 变 量 240
8.3.1 结构体变量的定义 240
8.3.2 结构体变量的使用 242
8.4 结构体数组 246
8.4.1 结构体数组的定义 247
8.4.2 结构体数组元素的使用 248
8.5 结构体和函数 251
8.5.1 结构体作函数参数 251
8.5.2 返回值为结构体类型的函数 252
8.6 共用体 254
8.6.1 共用体类型定义 254
8.6.2 共用体变量 255
8.6.3 共用体应用举例 256
8.7 枚举类型 258
8.8 typedef语句 261
8.9 指针与结构体 263
8.9.1 指向结构体的指针变量 263
8.9.2 用指向结构体的指针作函数参数 265
8.10 案例分析与实现 266
8.10.1 需求分析 266
8.10.2 系统设计 266
8.10.3 功能设计 267
8.10.4 小结 270
习题8 271
第9章 指针与链表 275
9.1 案例引入 275
9.2 存储空间的分配和释放 275
9.3 链式存储结构——链表 279
9.3.1 动态链表 280
9.3.2 静态链表 280
9.4 单链表 281
9.4.1 单链表的初始化 281
9.4.2 单链表的建立 282
9.4.3 单链表的遍历 284
9.4.4 单链表的插入 288
9.4.5 单链表的删除 291
9.4.6 单链表的查询 293
9.4.7 单链表的长度 294
9.4.8 不带头结点的单链表 295
9.4.9 单链表的应用 302
9.5 循环链表 303
9.6 双向链表 304
9.7 案例分析与实现 305
9.7.1 需求分析 305
9.7.2 系统设计 305
9.7.3 功能设计 306
9.7.4 小结 314
习题9 314
第10章 编译预处理和位运算及
 混合编程 315
10.1 文件包含处理——#include 315
10.2 宏定义——#define 317
10.2.1 不带参数的宏定义 317
10.2.2 带参数的宏定义 319
10.3 条件编译 321
10.4 位运算符和位运算 323
10.5 位段 325
10.6 位运算举例 327
10.7 C语言与汇编语言的混合编程 328
10.7.1 内嵌汇编代码 329
10.7.2 模块化连接方法 330
习题10 335
第11章 文件 338
11.1 案例引入 338
11.2 文件概述 339
11.2.1 数据流 339
11.2.2 文件 339
11.2.3 文件的操作流程 341
11.2.4 文件和内存的交互处理 341
11.3 文件类型的指针 342
11.4 标准输入/输出函数 343
11.4.1 打开文件 343
11.4.2 关闭文件 345
11.4.3 获取文件的属性 346
11.4.4 文件的顺序读写 347
11.4.5 文件的随机读写 364
11.4.6 出错检查 367
11.5 系统输入/输出函数 369
11.6 案例分析与实现 370
11.6.1 需求分析 370
11.6.2 系统设计 371
11.6.3 功能设计 372
11.6.4 系统实现 376
11.6.5 小结 385
习题11 386
第12章 C++面向对象程序设计 388
12.1 面向对象程序设计 388
12.1.1 面向对象程序设计产生的背景 388
12.1.2 类(class)和对象(object) 389
12.1.3 构造函数和析构函数 391
12.1.4 继承 392
12.1.5 多态性 392
12.2 C++ 语言 393
12.2.1 C++语言的特点 394
12.2.2 输出流(cout)和输入流(cin) 394
12.2.3 函数内联(inline) 397
12.2.4 函数重载(overloading) 398
12.2.5 引用(reference) 402
12.2.6 C++ 语言增加的运算符、数据
类型、注释 404
12.2.7 C++ 程序的集成开发环境 405
12.3 C# 语言 409
12.3.1 C# 语言简介 409
12.3.2 C# 语言的特点 409
12.4 基于MFC库的用户界面编程基础 410
习题12 420
第13章 C语言开发环境 423
13.1 Visual C++ 环境 423
13.1.1 Visual C++ 6.0集成开发环境 423
13.1.2 Visual C++ 6.0的使用 426
13.2 Dev C++环境 430
13.3 Linux下C程序开发环境和开发过程 433
13.3.1 使用vim编辑器编辑源文件 434
13.3.2 使用gcc编译器编译源程序 434
13.3.3 运行程序 435
13.4 调试程序 435
13.4.1 Visual C++环境中调试程序 435
13.4.2 Linux环境中gdb调试程序 439
13.5 编译错误信息 442
附录 448
附录Ⅰ 常用字符与ASCII码对照表 448
附录Ⅱ C语言中的关键字表 451
附录Ⅲ C语言中运算符的优先级及其
结合性一览表 451
附录Ⅳ C语言的库函数 452
参考文献 464