C语言程序设计与实践
书 号:9787113156787
丛 书 名:21世纪高等学校计算机公共课程“十二五”规划教材
作 者:夏耘
译 者:
开 本:16开
装 帧:平装
正文语种:
出 版 社:中国铁道出版社有限公司
定 价:40元
-
内容简介
本书是根据教育部对计算机小公共课程——“程序设计及应用”的教学要求编写的,吸取了国外先进教材方面的经验,融入了计算思维,力求兼有国外教材与国内教材的优点,增加了可供学生应用的与本学科有关的题目,让学生学有所用,从而激发其学习兴趣,达到理论和实践相结合的目的,使学生获得尽可能好的学习效果。本书贯彻启发思辨原则,以设计创新的启发式教学内容为纲,将启发式教学方法变成可操作的教学方法,通过任务驱动、项目引领实施可操作的启发式教学,实现了“教"与“学"互动,激发了学生的学习兴趣,充分调动了学生学习的主动性和创造性,达到了创新能力的培养和提高教学效果的目标。 -
前言
Richard M. Karp提出的“计算透镜”(Computational Lens)理念被认为是未来20年计算机科学可能的发展方向之一。其核心理念是将计算作为一种通用的思维方式,通过这种广义的计算(涉及信息处理、执行算法、关注复杂度)来描述各类自然过程和社会过程,从而解决各个学科的问题。这一理念试图将计算机科学由最初的数值计算工具、仿真与可视化技术以及后来基于网络、面向多学科的e-Science平台,变成普遍适用于自然和社会领域的通用思维模式。
计算思维的切入点就是程序设计,程序设计离不开编程语言。C语言以其小巧、灵活、高效等特点成为当今软件开发的主流。C语言作为大学生学习程序设计的入门语言,教育部考试中心及大部分省市也将C语言程序设计纳入计算机等级考试的科目。
本书将实际问题作为切入点,将计算思维融入程序设计中,旨在倡导学生通过程序设计提升发现问题、解决问题与技术创新的能力。读者通过本书设置的循序渐进的教程,从体验程序、调试程序、编写部分程序到独立编写完整的程序;在学习中会遇到不少问题,本书提供了资料包,为每章教学中可能出现的问题进行归纳、总结,倡导在学习中发现问题—解决问题—归纳总结的教学法,解决了学生长期以来学习C语言程序设计上课能听、下课不能解题,谈编程色变的问题。
本书注重基本概念的系统化,叙述简明扼要,书中对教学重点逐一进行了点拨。本书内容精练,结构合理,重点突出,对读者可能遇到的难点做了十分清楚和详细的阐述。
本书整理了课堂的教案,注重训练环节,体现了在理论指导下让学生动手、动脑的基本思想,提出理性思维和理性实践的观点。按照建构主义的学习理论,学生作为学习的主体,在与客观环境(指所学内容)的交互过程中构建自己的知识结构。本书引导学生在解题编程中探索其中带规律性的认识,进而将感性认识升华到理性高度,这样学生就能举一反三。本书可供各层面学生、教师、自学应试者阅读。
本书第1~5章为基础篇,每章设置了课堂练习、课后实验和课外练习,将该章应掌握的基本算法融入其中,基础篇中主要将学生引进门(程序设计入门);第6章为实践篇,介绍项目的开发流程,在项目设计中分别应用指针、链表、文件以及数据库技术,通过实践篇的学习读者能独立编写完整的程序,可以结合实际生活创作属于自己(项目开发组)的作品。
本书由夏耘任主编,由臧劲松、黄小瑜任副主编。第1~3章由夏耘执笔,第4章由黄小瑜执笔,第5章由臧劲松执笔,第6章由夏耘和臧劲松共同执笔。
本书由上海理工大学光电与计算机与工程学院计算机基础教学的一线教师共同编写,在编写过程中,组织了集体统稿、定稿,并得到了清华大学、交通大学、复旦大学、华东师范大学、华东理工大学、上海理工大学、上海大学等高校计算中心各位老师的帮助。在此一并致谢。
由于时间仓促和水平有限,本书中难免还存在一些不足之处,请广大读者批评指正。
编者
2012年11月 -
目录
第1篇 基础篇
第1章 构建程序 2
1.1 程序员的修养 2
1.1.1 程序员的为人之道 2
1.1.2 了解编程 4
1.1.3 编程习惯 6
1.2 初识程序 10
1.2.1 编程环境 10
1.2.2 程序的基本结构 17
1.3 构建第一个程序 21
课堂练习 32
课后实验:体验编程环境 34
课外练习 38
第2章 数值运算 39
2.1 基本概念 39
2.1.1 标识符 39
2.1.2 常量 41
2.1.3 变量 43
2.1.4 运算符与表达式 46
2.1.5 表达式语句 57
2.1.6 输入与输出函数 59
2.2 编程实施数据整理的基本方法 60
2.2.1 分组法 60
2.2.2 常用统计量的计算 70
2.3 程序常规优化方案 74
2.3.1 赋值语句优化 74
2.3.2 if语句优化 78
2.3.3 分支程序的测试 84
课堂练习 88
课后实验:体验分支程序结构 91
课外练习 96
第3章 迭代计算 98
3.1 简单重复问题的解决方案 98
3.1.1 for语句 98
3.1.2 while语句 103
3.1.3 do…while语句 106
3.1.4 循环控制的辅助语句 109
3.2 循环嵌套 111
3.2.1 嵌套问题 111
3.2.2 应用循环嵌套输出图形 113
3.2.3 复合结构 116
3.3 综合应用 119
课堂练习 128
课后实验:体验循环程序结构 133
课外练习 136
第4章 批量数据存储 138
4.1 批量数据存储器(数组) 138
4.1.1 一维数组 138
4.1.2 二维数组 142
4.1.3 字符串 145
4.1.4 指针与数组 151
4.2 批量数据的组织(结构体数组) 158
4.2.1 结构体类型的定义和变量的声明 160
4.2.2 结构体变量的存储与成员的引用 162
4.2.3 结构体数组 163
4.3 数据文件 165
4.3.1 文件指针 165
4.3.2 常用文件函数 166
课堂练习 168
课后实验:体验批量数据处理的方法 172
课外练习 176
第5章 模块与接口 177
5.1 模块的基本结构 177
5.1.1 函数的定义 179
5.1.2 函数的调用和函数参数 182
5.1.3 函数调用声明 186
5.2 模块拼接方法 188
5.2.1 函数的传值调用和传地址调用 188
5.2.2 函数的返回值 192
5.2.3 函数与数组 193
5.2.4 函数的嵌套调用和递归调用 198
5.2.5 编译预处理 205
5.3 变量的存储属性 207
5.3.1 变量的生存期与作用域 207
5.3.2 变量的存储类型 210
5.3.3 存储类别小结 213
5.3.4 传给main()函数的参数 214
课堂练习 214
课后实验:体验模块化程序设计 216
课外练习 219
第2篇 实践篇
第6章 C语言应用程序开发 222
6.1 学生成绩管理系统 222
6.1.1 项目可行性分析 222
6.1.2 需求分析 223
6.1.3 测试分析 226
6.1.4 源代码 229
6.2 应用系统中的常用算法 238
6.2.1 统计算法 239
6.2.2 排序算法 243
6.2.3 查找算法 248
6.2.4 插入、删除算法 253
6.2.5 加密算法 255
6.2.6 输入验证处理 257
课堂练习 259
课后实验:体验项目开发 264
课外练习 265
附录A C语言主要关键字及其用途 267
附录B C语言运算符优先级和结合性 268
附录C ASCII编码对照表 270
附录D C语言常用库函数 273
附录E 常用头文件 276
附录F Dev C编程环境 277
附录G Visual C++ 6.0编程环境 280 -
作者介绍
主要著译者顺序姓名学历职称学科专长通讯地址1夏耘 本科教授 计算机 工作单位上海理工大学 邮政编码 电话 2 工作单位 邮政编码 电话 3 工作单位 邮政编码 电话 审校者(主审者) 学历 工作单位 邮政编码 电话 职称 工作单位 邮政编码 电话 -
编辑推荐
全书从实用角度出发,在每一章中都设计了课堂练习、实验和课外练习,为每个知识点设计有趣实用的情节,让学生动手、动脑,反复练习从而达到巩固程序设计中所涉及的知识点的目的。本书以Code block为编程环境,对程序设计基本步骤、基本知识和语法、编程方法和常用算法进行了较为系统、详细的介绍,实例丰富有趣,阅读轻松,操作容易。 -
书评书荐
-
附件下载
图书推荐