本书主要讲解如何用C语言进行编程。书中涵盖了C语言的基本特性,包括主要的ANSI C99标准新增加的特性。本书通过示例讲解C语言编程,使用完整的程序来阐释每个概念和编程思想,而且对C函数都提供了具体说明。
本书共分9章,分别介绍了计算机与C编程入门、C语言程序设计初步、C程序控制结构、数组、函数、指针、复杂数据类型、文件、预编译和位运算等知识。此外,本书每章结尾都配有习题,帮助学生巩固所学知识。
本书不仅可以作为普通本科院校独立学院(三本)的教材,也可以作为高职高专院校、成人高校、广播电视大学等各类高等院校的教材,同时还可作为相关等级考试的教材,以及程序设计爱好者的自学用书。
样章试读
目录
- 第1章 计算机和C编程入门
1.1 计算机系统
1.1.1 硬件
1.1.2 软件
1.1.3 高级语言
1.1.4 编译器
1.1.5 历史回顾
1.2 编程和问题求解
1.2.1 算法
1.2.2 程序设计
1.2.3 软件生存期
1.3 C编程入门
1.3.1 准备编程
1.3.2 一个C示范程序
1.3.3 变量、表达式和赋值
1.3.4 初始化
1.3.5 include及其用法
1.3.6 printf( )和 scanf( )简介
1.3.7 while语句
1.3.8 问题求解
1.3.9 编码风格
1.3.10 常见的编程错误
1.4 测试和调试
1.4.1 程序错误类型
1.4.2 陷阱:错误地假定程序正确
1.5 程序设计学习方法
1.6 Visual C++集成开发环境
1.6.1 Visual C++可视化集成开发环境
1.6.2 Visual C++有关联机帮助
1.7 C语言的起源
本章小结
课后习题
第2章 C语言程序设计初步
2.1 C语言的字符集、关键字和标识符
2.1.1 C语言的字符集
2.1.2 C语言的关键字
2.1.3 C语言的标识符
2.2 数据类型
2.3 常量和变量
2.3.1 常量
2.3.2 变量
2.4 运算符与表达式
2.4.1 算术运算符与算术表达式
2.4.2 赋值运算符与赋值表达式
2.5 类型转换
2.5.1 赋值转换
2.5.2 算术运算时的自动类型转换
2.5.3 强制转换
2.6 输入输出函数
2.6.1 字符型数据的输入输出函数
2.6.2 格式化输出函数printf( )
2.6.3 格式化输入函数scanf( )
本章小结
课后习题
第3章 C程序控制结构
3.1 C语句概述
3.1.1 简单语句
3.1.2 复合语句
3.1.3 流程控制语句
3.2 顺序结构
3.2.1 三种基本的结构
3.2.2 顺序结构
3.3 选择结构语句
3.3.1 关系运算符与关系表达式
3.3.2 逻辑运算符与逻辑表达式
3.3.3 if语句
3.3.4 条件运算符和条件表达式
3.3.5 switch语句
3.4 循环结构的流程控制
3.4.1 自增自减运算符
3.4.2 while语句
3.4.3 do while语句
3.4.4 for语句
3.4.5 三种循环的比较
3.5 循环的嵌套
3.6 辅助控制语句
3.6.1 break语句
3.6.2 continue语句
3.7 循环结构程序举例
本章小结
课后习题
第4章 数组
4.1 一维数组
4.1.1 一维数组的定义
4.1.2 一维数组元素的引用
4.1.3 一维数组的初始化
4.1.4 一维数组程序举例
4.2 二维数组
4.2.1 二维数组的定义
4.2.2 二维数组元素的引用
4.2.3 二维数组的初始化
4.2.4 二维数组程序举例
4.3 字符数组
4.3.1 字符数组的定义
4.3.2 字符数组的初始化
4.3.3 字符数组的引用
4.3.4 字符串和字符串结束标志
4.3.5 字符数组的输入输出
4.3.6 字符串处理函数
4.3.7 程序举例
本章小结
课后习题
第5章 函数
5.1 函数概述
5.2 函数的分类
5.3 函数的定义和调用
5.3.1 函数的定义
5.3.2 函数的调用
5.4 函数的返回值
5.5 函数的参数及参数的传递
5.5.1 函数的参数
5.5.2 参数的传递方式
5.6 函数的嵌套与递归调用
5.6.1 函数的嵌套调用
5.6.2 函数的递归调用
5.7 变量的作用域和存储类型
5.7.1 变量的作用域
5.7.2 变量的存储类型
5.8 综合实例
本章小结
课后习题
第6章 指针
6.1 地址与指针的基本概念
6.2 指针变量的定义及初始化
6.2.1 指针变量的定义
6.2.2 指针变量的初始化
6.3 指针运算符
6.4 指针变量的运算
6.4.1 给指针变量赋值
6.4.2 指针变量的加减及关系运算
6.5 指针与函数参数
6.6 数组和指针
6.6.1 指向数组元素的指针
6.6.2 通过指针引用数组元素
6.6.3 数组名和指针变量作函数参数
6.6.4 指针与二维数组
6.7 字符串的指针和指向字符串的指针变量
6.8 函数指针变量与返回指针值的函数
6.8.1 函数指针变量
6.8.2 返回指针值的函数
6.9 指针数组和多级指针
6.9.1 指针数组的概念
6.9.2 多级指针
本章小结
课后习题
第7章 复杂数据类型
7.1 结构体
7.1.1 结构体类型的定义
7.1.2 结构体变量的定义
7.1.3 结构体变量成员的表示方法
7.1.4 结构体变量的赋值
7.1.5 结构体变量的初始化
7.1.6 结构体数组
7.1.7 结构体指针
7.2 共用体
7.2.1 共用体类型的定义
7.2.2 共用体变量的定义
7.2.3 共用体变量的引用
7.3 枚举
7.3.1 枚举类型的定义
7.3.2 枚举变量的定义
7.3.3 枚举类型变量的赋值和使用
7.4 类型定义符typedef
本章小结
课后习题
第8章 文件
8.1 C文件概述
8.2 文件指针
8.3 文件的打开与关闭
8.3.1 文件的打开(fopen函数)
8.3.2 文件的关闭(fclose函数)
8.4 文件的读写操作
8.4.1 字符读写函数fgetC和fputC
8.4.2 字符串读写函数fgets和fputs
8.4.3 数据块读写函数fread和fwrite
8.4.4 格式化读写函数fscanf和fprintf
8.5 文件的随机读写
8.5.1 文件定位
8.5.2 文件的随机读写
8.6 文件检测函数
8.7 C库文件
本章小结
课后习题
第9章 预编译和位运算
9.1 宏定义
9.1.1 不带参数宏定义
9.1.2 带参数宏定义
9.2 文件包含
9.3 条件编译
9.3.1 #ifdef命令
9.3.2 #ifndef命令
9.3.3 #if指令
9.4 位运算
9.4.1 位运算符
9.4.2 位域(位段)
本章小结
课后习题
附录
附录Ⅰ ASCII码表
附录Ⅱ C语言关键字
附录Ⅲ C语言运算符的优先级和结合性
附录Ⅳ 常用库函数
附录Ⅴ printf函数和scanf函数的具体使用说明
参考文献