《计算机程序设计基础》的编写以新时代新工科课程建设为背景,融入思政元素,在面向工程的应用型人才培养方面进行了一定的探索。该书以C 为工具,以VisualStudi0 2010为编程环境,面向编程实践和问题求解能力训练。
《计算机程序设计基础》的对象不是C 软件开发专业人员,而是高校各专业(尤其是非计算机专业)的学生,他们中的大多数都没有程序设计的经验,甚至缺少计算机相关的基础知识,基于这些因素,该书在内容规划和组织方面体现了以下特色:
(1)从计算机的基本工作原理、常用进制、数据的表示与编码等计算机基础知识人手,引入算法及流程图,为程序设计的入门打下基础。
(2)重视编程思维的培养,以讲授程序设计为主,将C 的有关语法有机结合到程序设计中,而不是简单罗列C 语法中的各种琐碎细节。
(3)针对每个知识点精心设计案例内容,并从思路分析、数据结构规划、算法设计、程序设计与运行、延展学习等方面进行全面的探讨,以帮助读者清晰地掌握程序设计的思路与方法,并真正做到由浅入深、由易到难,引导读者编写规模逐渐加大、难度逐渐提高的程序。
(4)全书程序采用统一的代码规范进行编写,希望以此提高读者程序编写的规范性。
(5)每章开头给出学习要点,让读者可快速了解本章内容,建立起知识框架;重点章节给出常见错误小结,为初学者解决编程常见问题提供一定的指导,达到事半功倍的效果。
(6)以面向过程的程序设计为主,并初步涉及面向对象程序设计和MFC编程,旨在引导读者初步掌握面向对象的程序设计方法及激发读者开发基于Windows的可视化程序的兴趣。
(7)融入了与程序设计相关的思政元素,以此激发学生的民族自豪感,培养学生精益求精的大国工匠精神,增强学生探索未知、追求真理、勇攀科学高峰的责任感和使命感。
(8)该书配套有丰富的数字化资源,如微课视频、编程训练、习题与答案解析、知识点测试及结果分析等,这些资源均可通过扫描书中相应位置的二维码或登录轨道在线超媒体数字教育平台进行学习。
计算机程序设计是绝大多数高校理工科专业必修的公共基础课程之一,其重要性不仅体现在一般意义上的程序编写,更多地体现在计算思维能力的培养,以及利用计算机解决问题的能力和方法,并终为相关行业提供信息化的技术支持。
本书的编写以新时代新工科课程建设为背景,融人思政元素,在面向工程的应用型人才培养方面进行了一定的探索。本书以C 为工具,以VisualStudi0 2010为编程环境,面向编程实践和问题求解能力训练。
本书的对象不是C 软件开发专业人员,而是高校各专业(尤其是非计算机专业)的学生,他们中的大多数都没有程序设计的经验,甚至缺少计算机相关的基础知识,基于这些因素,本书在内容规划和组织方面体现了以下特色:
(1)从计算机的基本工作原理、常用进制、数据的表示与编码等计算机基础知识人手,引入算法及流程图,为程序设计的入门打下基础。
(2)重视编程思维的培养,以讲授程序设计为主,将C 的有关语法有机结合到程序设计中,而不是简单罗列C 语法中的各种琐碎细节。
(3)针对每个知识点精心设计案例内容,并从思路分析、数据结构规划、算法设计、程序设计与运行、延展学习等方面进行全面的探讨,以帮助读者清晰地掌握程序设计的思路与方法,并真正做到由浅入深、由易到难,引导读者编写规模逐渐加大、难度逐渐提高的程序。
(4)全书程序采用统一的代码规范进行编写,希望以此提高读者程序编写的规范性。
(5)每章开头给出学习要点,让读者可快速了解本章内容,建立起知识框架;重点章节给出常见错误小结,为初学者解决编程常见问题提供一定的指导,达到事半功倍的效果。
(6)以面向过程的程序设计为主,并初步涉及面向对象程序设计和MFC编程,旨在引导读者初步掌握面向对象的程序设计方法及激发读者开发基于Windows的可视化程序的兴趣。
(7)融入了与程序设计相关的思政元素,以此激发学生的民族自豪感,培养学生精益求精的大国工匠精神,增强学生探索未知、追求真理、勇攀科学高峰的责任感和使命感。
(8)本书配套有丰富的数字化资源,如微课视频、编程训练、习题与答案解析、知识点测试及结果分析等,这些资源均可通过扫描书中相应位置的二维码或登录轨道在线超媒体数字教育平台进行学习。
本书由西南交通大学刘霓担任主编,凯定吉、冯晓红担任副主编,参加编写工作的老师有:刘金艳、刘倩、李茜、刘军、张旭丽、崔波、吴燕、王坤、任挺。参与编写的老师都是长期从事计算机程序设计课程教学的一线教师,具有丰富的理论知识与实践经验;同时对理工科本科学生的学习特点和习惯十分熟悉,所编写的内容具有很强的针对性与适用性。全书的编写与审稿工作凝聚了全体老师的辛勤劳动与付出,同时也得到了相关专家的悉心指导与大力支持。在此,一并表示诚挚的感谢!
由于程序设计方法和技术的发展非常迅速,具有极强的时效性,同时由于编者水平有限,书中难免存在不足之处,欢迎读者在阅读过程中不吝批评与指正,提出宝贵的建议,在此先行致谢。
第1章 信息处理基础
1.1 计算机中数据的表示
1.2 计算机中数据的存储
1.3 计算机的工作过程
1.4 程序与程序设计语言
1.5 C 语言简介
1.6 计算机算法概述
习题与答案解析
第2章 C 语言基础知识
2.1 C 程序框架
2.2 C 基本词法
2.3 数据类型
2.4 常量与变量
2.5 基本运算符与表达式
2.6 类型转换
2.7 基本输入/输出
2.8 格式化输出
2.9 常见错误小结
习题与答案解析
第3章 选择控制结构
3.1 关系运算符与关系表达式
3.2 逻辑运算符与逻辑表达式
3.3 选择控制结构
3.4 常见错误小结
习题与答案解析
第4章 循环控制结构
4.1 循环基本结构
4.2 循环控制语句
4.3 循环嵌套
4.4 程序设计基本方法简介
4.5 常见错误小结
习题与答案解析
第5章 函数初步
5.1 模块化程序设计
5.2 主函数
5.3 库函数
5.4 子函数
5.5 常见错误小结
习题与答案解析
第6章 数组与字符串
6.1 数组的引入
6.2 一维数组及应用
6.3 二维数组及应用
6.4 字符数组处理字符串
6.5 string类处理字符串
6.6 常见错误小结
习题与答案解析
第7章 指针及链表
7.1 指针与指针变量
7.2 指针与一维数组
7.3 指针与二维数组
7.4 动态存储分配
7.5 用指针处理链表
7.6 常见错误小结
习题与答案解析
第8章 函数进阶
8.1 参数传递
8.2 递归函数
8.3 变量的生存期与作用域
8.4 函数模板
8.5 常见错误小结
习题与答案解析
第9章 面向对象程序初步
9.1 类与对象
9.2 构造函数与析构函数
9.3 继承与派生
9.4 MFC编程
习题与答案解析
第10章 文件操作
10.1 文件的基本概念与类型
10.2 文件操作类
10.3 ASCII文件顺序读写
10.4 二进制文件顺序读写
10.5 文件随机读写
习题与答案解析
附录
附录A 运算符的优先级与结合性
附录B 常用字符与ASCII值对照表
附录C 常用标准库函数
附录D 常用C 类与成员函数
附录E Visual Studio的安装及基本操作
参考文献