-
内容大纲
本书是国家精品在线开放课程、国家级一流课程“C语言程序设计精髓”和“程序设计基础”的参考教材,适合作为高等院校各专业计算机公共基础课教材。本书共10章,具体包括:程序设计的计算机基础,基本I/O和基本运算,基本控制结构,模块化程序设计与函数,常用的问题求解策略,数组和排序查找算法,指针及其应用,字符串和文本处理,结构体和动态数据结构,文件读写和综合应用。
本书力求以通俗易懂、简洁明快的语言,从现代视角解读C语言的神韵,帮助读者快速掌握能够以不变应万变的“编程之魂”,达到灵活使用C语言解决实际问题的目的。此外,本书还为任课教师免费提供多媒体课件、例题和习题源代码,以及程序设计远程在线考试平台等教学资源。
本书可作为高等学校C语言程序设计类课程的配套教材,还可作为各类计算机培训、自学人员的参考书。 -
作者介绍
苏小红,女,博士,教授,博士生导师,中国计算机学会高级会员,哈尔滨工业大学计算机科学与技术国家级实验教学示范中心副主任,计算机语言基础教研室主任,校级教学名师,校教学带头人,国家精品课程和国家级精品资源共享课程“C语言程序设计”以及省级精品课程“计算机图形学”负责人,中国大学MOOC课程“C语言程序设计精髓”和“程序设计基础”负责人。 研究方向为:程序分析技术及其应用,智能信息处理与信息融合,图像处理与模式识别。完成国家自然科学基金、国防基础科研、国家863、国际合作等多项科研项目,获黑龙江省科技进步二等奖1项,黑龙江省自然科学二等奖1项,哈尔滨市自然科学技术学术成果一等奖1项。发表学术研究论文100余篇,获软件著作权登记8项。在教学研究方面,获国家级教学成果二等奖1项,黑龙江省教学成果一等奖2项、二等奖2项,校级教学成果一等奖4项。主编教材9部,翻译外版教材2部,与国外大学教师合著教材2部,主审教材2部。2007年获宝钢优秀教师奖。2012年被评为黑龙江省师德先进个人。2014年被评为黑龙江省优秀教师。 -
目录
第1章 程序设计的计算机基础
1.1 计算机与人工智能
1.2 计算机系统
1.3 计算机的基本工作原理
1.4 数据在计算机中的表示与存储
1.5 程序设计语言
1.5.1 机器语言、汇编语言与高级语言
1.5.2 高级语言的分类
1.5.3 C语言简介
1.6 编写程序的基本步骤
1.7 如何学习编程
1.8 何为AI编程
习题1
第2章 基本I/O和基本运算
2.1 认识C语言程序从Hello World开始
2.2 变量及其数据类型
2.2.1 变量的数据类型和变量的定义
2.2.2 变量的数据类型决定了什么
2.2.3 标识符的命名规则
2.3 常量
2.3.1 常量的表示
2.3.2 宏常量和const常量
2.4 键盘输入和屏幕输出
2.4.1 单个字符的输入输出
2.4.2 数据的格式化屏幕输出
2.4.3 数据的格式化键盘输入
2.5 算术运算
2.6 赋值运算
2.7 增1和减1运算
2.8 混合运算中的类型转换
2.8.1 自动类型转换
2.8.2 强制类型转换
2.9 AI编程的基本流程
2.10 本章知识点思维导图
习题2
第3章 基本控制结构
3.1 算法的概念与算法的描述方法
3.1.1 算法的概念
3.1.2 算法的描述方法
3.2 顺序结构
3.3 选择结构
3.3.1 选择结构的控制方式
3.3.2 条件语句
3.3.3 开关语句
3.4 循环结构
3.4.1 循环控制方式
3.4.2 计数控制的循环和for语句
3.4.3 条件控制的循环、while和do-while语句
3.4.4 嵌套循环
3.5 结构化程序设计与流程转移控制
3.5.1 结构化程序设计方法
3.5.2 goto语句
3.5.3 break语句
3.5.4 continue语句
3.6 学习AI编程的首要任务——清晰地表达需求
3.7 本章知识点思维导图
习题3
第4章 模块化程序设计与函数
4.1 模块化程序设计
4.2 函数的定义
4.3 函数调用和参数传递
4.4 断言和防御式编程
4.5 多文件编程
4.6 变量的作用域和存储类型
4.6.1 变量的作用域
4.6.2 变量的存储类型
4.7 程序调试方法
4.8 AI辅助编程实例
4.9 本章知识点思维导图
习题4
第5章 常用的问题求解策略
5.1 计算机的问题求解过程与问题求解策略
5.2 枚举
5.3 递推
5.3.1 正向顺推
5.3.2 反向逆推
5.4 递归
5.4.1 递归的内涵与数学基础
5.4.2 递归函数及其基本要素
5.4.3 递归的执行过程
5.4.4 递归与迭代的关系
5.4.5 尾递归
5.5 AI辅助编程实例
5.6 本章知识点思维导图
习题5
第6章 数组和排序查找算法
6.1 一维数组和二维数组
6.2 数组作函数参数
6.2.1 按值调用与模拟按引用调用
6.2.2 一维数组作函数参数
6.2.3 二维数组作函数参数
6.3 查找算法
6.3.1 顺序查找
6.3.2 二分查找
6.4 排序算法
6.4.1 冒泡排序算法
6.4.2 交换排序算法
6.4.3 选择排序算法
6.5 AI辅助编程实例
6.6 本章知识点思维导图
习题6
第7章 指针及其应用
7.1 指针的概念
7.1.1 变量的地址和变量的寻址方式
7.1.2 指针变量的定义、初始化及其解引用
7.2 指针变量作函数参数
7.3 函数指针及其应用
7.3.1 函数指针的概念
7.3.2 函数指针的应用
7.4 指针与一维数组的关系
7.4.1 指针的运算
7.4.2 利用指针访问一维数组
7.5 AI辅助编程实例
7.6 本章知识点思维导图
习题7
第8章 字符串和文本处理
8.1 字符串的存储、表示与处理
8.1.1 字符串的存储与表示
8.1.2 字符串的输入和输出
8.1.3 字符串处理函数
8.1.4 字符串处理函数的安全性
8.2 字符串的应用
8.2.1 向函数传递字符串
8.2.2 从函数返回字符串
8.3 指针数组及其应用
8.3.1 指针和二维数组间的关系
8.3.2 字符指针数组和二维字符数组
8.4 AI辅助编程实例
8.5 本章知识点思维导图
习题8
第9章 结构体和动态数据结构
9.1 结构体类型
9.1.1 结构体类型的声明和结构体变量的定义
9.1.2 结构体成员的初始化和访问
9.1.3 结构体占内存的字节数
9.1.4 结构体的相关计算和操作
9.2 结构体作函数参数
9.2.1 在函数之间传递结构体数据
9.2.2 结构体应用实例
9.3 共用体类型及其应用
9.4 枚举类型及其应用
9.5 动态内存分配和动态数据结构
9.5.1 动态内存分配
9.5.2 动态数据结构之链表
9.5.3 常见的内存错误及其解决对策
9.6 AI辅助编程实例
9.7 本章知识点思维导图
习题9
第10章 文件读写和综合应用
10.1 文本文件和二进制文件
10.2 缓冲文件系统和非缓冲文件系统
10.3 文件的打开与关闭
10.4 标准输入输出重定向
10.5 文本文件的读写操作
10.5.1 按格式读写文件
10.5.2 按字符读写文件
10.5.3 按字符串读写文件
10.6 应用实例
10.6.1 幸运大抽奖
10.6.2 人机交互走迷宫
10.7 本章知识点思维导图
习题10
附录A C语言关键字
附录B GCC中数据类型占内存的字节数和取值范围
附录C 运算符的优先级与结合性
附录D 字符十进制编码的ASCII值
附录E 二进制补码的计算方法
附录F 位运算
附录G 输入输出格式转换说明符
附录H 常用的ANSI C标准库函数
附录I 基本编码规范
参考文献
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
