新書推薦:
《
罗马政治观念中的自由
》
售價:NT$
230.0
《
中国王朝内争实录:宠位厮杀
》
售價:NT$
281.0
《
凡事发生皆有利于我(这是一本读了之后会让人运气变好的书”治愈无数读者的心理自助经典)
》
售價:NT$
203.0
《
未来特工局
》
售價:NT$
254.0
《
高术莫用(十周年纪念版 逝去的武林续篇 薛颠传世之作 武学尊师李仲轩家世 凸显京津地区一支世家的百年沉浮)
》
售價:NT$
250.0
《
英国简史(刘金源教授作品)
》
售價:NT$
449.0
《
便宜货:廉价商品与美国消费社会的形成
》
售價:NT$
352.0
《
读书是一辈子的事(2024年新版)
》
售價:NT$
352.0
|
編輯推薦: |
本书以C 语言为工具,以现实生活中的案例为引导,说明如何分析问题、利用计算机解决问题的思维方法。引入应用程序开发,由浅入深,逐步启发、引领学生学习编写规模逐渐加大的程序,将计算思维的基本思想方法和魅力逐步展现出来,引导读者实现问题求解思维方式的转换培养计算思维能力。全书在内容组织上突出以下特色:1 结构新颖。根据所介绍知识,每章除了安排具有趣味性的实例以外,还安排了有助学生提高和升华知识点的综合案例,这些案例来自于生活或学习中的应用需求,可以让学生在任务的驱动下,由浅入深,学习和编写规模逐渐加大的程序,在潜移默化中逐步让学生了解、学习计算机如何解决问题,从而掌握利用计算机解决问题的方法。2 提供了很多编程套路。从典型的程序实例中总结出套路,即解决一类问题的方法,从而让初学者迅速掌握基础编程的方法和算法,具有解决实际问题的能力。3 助学。每章安排有内容提示、教学基本要求,例题从问题分析、算法描述、问题总结、注意事项等方面进行完整论述,每章包含知识总结和习题等内容,有利于教师组织教学,也有助于学生进行预习与复习。4 易学。本着知识量*小而收获量*的原则,突出主线和重点,分解难点,以循序渐进
|
內容簡介: |
本书从培养学生计算思维的角度出发,以案例为引导,介绍了C程序设计基础、基本数据类型、数据运算、程序的基本结构、数组、指针、函数、结构体、共用体和枚举类型、文件和指针的高级应用等内容。书中提供了大量趣味性实例,并做了深入浅出的分析和总结,有助于引领读者理解编程思维和方法;每章有综合案例,为升华知识提供桥梁;各章的知识结构图,有助于学生理清知识脉络;精选的典型习题,为进一步深化基础知识、提高分析问题和解决问题的能力起到了重要作用。 本书采用导学、易学编写策略,每章安排有内容提示、教学基本要求和总结,正文组织本着知识量*小而收获量*的原则,突出重点和难点。全书逻辑清晰,层次分明,例题丰富,适合作为高等院校本科各专业公共课教材,也可作为计算机相关工程技术人员、计算机爱好者及各类自学人员的参考书。 本书的电子课件、习题答案和实例源文件可以到http:www.tupwk.com.cn网站下载。
|
目錄:
|
第1章 C语言程序设计概述 1
1.1 C语言程序的基本组成 1
1.2 C语言程序设计的一般步骤 4
1.3 C语言程序的上机执行过程 5
1.3.1 Code::Blocks 6
1.3.2 Visual C 6.0 8
1.4 C语言学习方法 12
1.4.1 为什么要学C语言 12
1.4.2 如何学习C语言 13
1.4.3 C语言学习资源 13
1.5 案例:程序的铭牌 13
本章小结 14
习题 15
第2章 C语言基础 17
2.1 C语言的字符集 17
2.2 标识符 17
2.2.1 保留字 17
2.2.2 用户自定义标识符 18
2.3 数据与C语言的数据类型 18
2.3.1 整型数据类型 19
2.3.2 实型数据类型 21
2.3.3 字符型数据类型 22
2.4 常量 23
2.4.1 整型常量 23
2.4.2 实型常量 23
2.4.3 字符常量 24
2.4.4 字符串常量 25
2.4.5 符号常量 25
2.5 变量 26
2.6 运算符 28
2.6.1 算术运算 28
2.6.2 关系运算 31
2.6.3 逻辑运算 32
2.6.4 赋值运算 33
2.6.5 逗号运算 35
2.6.6 条件运算符和条件表达式 35
2.6.7 sizeof运算符 36
2.6.8 类型转换 37
2.7 数据的输入输出 40
2.7.1 字符数据的输入输出 40
2.7.2 格式化输出和输入函数 41
2.8 案例:鸡兔同笼 48
本章小结 49
习题 50
第3章 程序设计基本结构 53
3.1 顺序结构 53
3.2 条件判断选择结构 55
3.2.1 if语句 55
3.2.2 switch语句 60
3.3 一遍又一遍循环结构 62
3.3.1 while循环语句 62
3.3.2 for循环语句 64
3.3.3 dowhile循环语句 66
3.3.4 break和continue语句 68
3.3.5 三种循环语句的比较 70
3.4 嵌套 70
3.5 应用举例 73
3.5.1 一般计算问题 73
3.5.2 穷举法求解问题 76
3.5.3 递推和迭代法求解问题 78
3.5.4 用嵌套的循环求解问题 81
3.6 案例:基因信息处理 83
本章小结 86
习题 87
第4章 数组 99
4.1 数组的基本概念 99
4.2 一维数组 100
4.2.1 一维数组的定义 100
4.2.2 一维数组的引用 101
4.2.3 一维数组的初始化 102
4.2.4 一维数组的应用 102
4.3 二维数组 110
4.3.1 二维数组的定义 110
4.3.2 二维数组的引用 111
4.3.3 二维数组的初始化 111
4.3.4 二维数组的应用 112
4.5 字符数组 114
4.5.1 字符数组的定义 114
4.5.2 字符数组的初始化 114
4.5.3 字符数组的引用 115
4.5.4 字符串的输入输出 115
4.5.5 字符串处理函数 118
4.5.6 应用举例 120
4.6 案例:抽奖嘉年华 122
本章小结 124
习题 126
第5章 指针 135
5.1 指针的概念 135
5.1.1 内存地址和指针 135
5.1.2 指针变量的声明 136
5.1.3 取地址运算符和间接寻址
运算符 136
5.1.4 指针的引用 138
5.2 指针与数组 139
5.2.1 指针的算术运算 140
5.2.2 指针的比较运算 141
5.2.3 指针与一维数组 141
5.2.4 指针与二维数组 143
5.3 字符指针 148
5.3.1 字符指针与字符串 148
5.3.2 字符指针与字符数组 150
5.4 指针数组 151
5.4.1 指针数组的定义 151
5.4.2 指针数组的应用 151
5.5 案例:括号匹配问题 155
本章小结 157
习题 157
第6章 函数 161
6.1 函数的定义与调用 161
6.1.1 函数的定义 162
6.1.2 函数调用 164
6.2 函数间的数据传递 168
6.2.1 通过参数传递 168
6.2.2 通过函数返回值传递 176
6.2.3 函数设计的原则 177
6.3 变量的作用域和生存周期 178
6.3.1 变量的作用域 178
6.3.2 变量的生存周期 181
6.4 函数的嵌套调用和递归调用 186
6.4.1 函数的嵌套调用 186
6.4.2 函数的递归调用 188
6.5 案例:掷骰子游戏 189
本章小结 191
习题 193
第7章 结构体、共用体与枚举类型 199
7.1 结构体 199
7.1.1 结构体的定义 200
7.1.2 结构体变量 201
7.1.3 结构体数组 205
7.1.4 结构体指针 208
7.1.5 结构体与函数 211
7.2 共用体 216
7.2.1 共用体的定义 216
7.2.2 共用体变量的定义 216
7.2.3 共用体变量的引用 218
7.3 枚举类型 220
7.3.1 枚举类型的定义 220
7.3.2 枚举变量的定义和引用 221
7.4 typedef类型定义 223
7.5 案例:维护通讯录数据库 224
本章小结 228
习题 229
第8章 文件 235
8.1 文件概述 235
8.1.1 什么是文件 235
8.1.2 文本文件和二进制文件 235
8.1.3 文件类型指针 236
8.1.4 文件操作 237
8.2 文件的打开与关闭 238
8.2.1 打开文件 238
8.2.2 关闭文件 240
8.3 文件的读写操作 240
8.3.1 按字符读写文件 241
8.3.2 按格式读写文件 245
8.3.3 按数据块读写文件 247
8.4 文件的定位 250
8.5 文件出错检测 251
8.6 案例:打字练习程序 252
本章小结 254
习题 255
第9章 底层程序设计 259
9.1 位运算符 259
9.1.1 按位逻辑运算 260
9.1.2 移位运算 264
9.1.3 位运算赋值运算符 266
9.2 位段 267
9.3 案例:查看内存单元 270
本章小结 271
习题 272
第10章 编译预处理 273
10.1 #include文件包含命令 273
10.2 #define宏定义 274
10.2.1 不带参数的宏定义 275
10.2.2 带参数的宏 276
10.3 条件编译 278
10.4 编写大型程序 280
10.5 案例:数据压缩和解压缩 281
本章小结 284
习题 285
第11章 指针的高级应用 287
11.1 多级指针 287
11.2 main函数带参数 288
11.3 函数指针 289
11.4 动态内存分配 291
11.4.1 动态内存分配函数 291
11.4.2 动态内存空间的使用 293
11.5 链表 295
11.6 案例:简单学生成绩管理
系统 300
本章小结 306
习题 307
附录 313
附录A 字符与ASCII码对照表 313
附录B 运算符和结合性 314
附录C C语言中的关键字 315
附录D C常用库函数 315
参考文献 323
|
內容試閱:
|
学生学习数学课程、物理课程并不是要成为数学家或物理学家,而是通过这些课程的训练,养成科学思维的素质和能力,这种认识也同样适用于计算机课程。程序设计基础课程对于培养学生计算思维美国计算机科学家周以真认为:计算思维是运用计算机科学的基础概念进行问题求解、系统设计以及人类行为理解等涵盖计算机科学之广度的一系列思维活动起着至关重要的作用。
本书以C语言为工具,以现实生活中的案例为引导,说明如何分析问题、利用计算机解决问题的思维方法。引入应用程序开发,由浅入深,逐步启发、引领学生学习编写规模逐渐加大的程序,将计算思维的基本思想方法和魅力逐步展现出来,引导读者实现问题求解思维方式的转换培养计算思维能力。
本书按知识结构组织为11章内容,第1章为C语言程序设计概述,介绍与程序设计有关的概念,说明C语言程序的基本组成结构、C语言程序设计开发环境与过程;第2章为C语言基础,介绍C语言的基本数据类型,常量和变量,C语言基本运算的运算符、表达式及应用,数据的输入和输出函数的使用;第3章为程序设计基本结构,介绍程序的3种基本结构,实现选择和循环结构的语句及其应用,介绍常见问题及解决问题的方法;第4章为数组,介绍数组的基本概念、使用及处理数组中数据的常用方法;第5章为指针,介绍指针的概念,指针的使用,利用指针处理数据的方法;第6章为函数,介绍函数的定义、调用及函数间数据传递的方法,说明变量的存储属性及其使用;第7章为结构体、共用体与枚举类型,介绍结构体和共用体的定义、使用和区别,介绍了枚举类型的定义和使用;第8章为文件,介绍了文件的基本概念,文件的操作步骤,利用文件实现内存和外存中数据交换的方法;第9章为底层程序设计,介绍了位运算的运算符号、规则及应用;第10章为编译预处理,介绍了编译预处理命令的使用、编写大型程序的方法等;第11章为指针的高级应用,介绍了多级指针、main函数带参数、函数指针、动态内存分配及链表。每章提供适合该章知识点的综合案例,以拓展知识、开阔学生的眼界。
全书在内容组织上突出以下特色:
1 结构新颖。根据所介绍知识,每章除了安排具有趣味性的实例以外,还安排了有助学生提高和升华知识点的综合案例,这些案例来自于生活或学习中的应用需求,可以让学生在任务的驱动下,由浅入深,学习和编写规模逐渐加大的程序,在潜移默化中逐步让学生了解、学习计算机如何解决问题,从而掌握利用计算机解决问题的方法。
2 提供了很多编程套路。从典型的程序实例中总结出套路,即解决一类问题的方法,从而让初学者迅速掌握基础编程的方法和算法,具有解决实际问题的能力。
3 助学。每章安排有内容提示、教学基本要求,例题从问题分析、算法描述、问题总结、注意事项等方面进行完整论述,每章包含知识总结和习题等内容,有利于教师组织教学,也有助于学生进行预习与复习。
4 易学。本着知识量最小而收获量最大的原则,突出主线和重点,分解难点,以循序渐进的方法,力求让学生对于难点部分学的轻松,知识点掌握牢固。
5 想学。例题选材知识性、趣味性和经典性相结合,尽力降低枯燥度,增强学生学习的幸福指数。
6 爱做。习题丰富。每章配有形式多样的习题,尽力吸引学生学后爱做、自觉温故知新。
本书由李书琴主审、王娟勤主编。第1、第3章由吴昊编写,第2、第4、第5、第9章由王娟勤编写,第6和第7章由成宝国编写,第8章由任国霞编写,第10章由晁晓菲编写,第11章由胡秋霞编写,并提供了部分例题和习题。
在全书的编写过程中,孙健敏、陈勇和承担《C语言程序设计》课程的各位老师,在整本书的规划和编写中,对本书提出了很多宝贵意见并给予了帮助,在此表示最诚挚的感谢。
由于编者水平有限,书中的不足、疏漏之处在所难免,恳请广大读者提出宝贵意见和建议。我们的信箱是huchenhao@263.net,电话是010-62796045。
本书的电子课件、习题答案和实例源文件可以到http:www.tupwk.com.cn网站下载。
编 者
2017年4月
书中图标的意义
本书包含一些强调特定知识点的图标,它们能够直观地标识注意、警告、提示、总结和说明等内容。
需要引起注意的内容。
防止错误,容易出错的地方。
提出问题,或大家感觉有疑问的地方。
重点知识,或有总结内容的地方。
程序或知识点说明、论述。
强调特定知识点的地方。
提升知识深度、难度,提高和进阶的内容。
用于标识使用此方法的优势、优点、好处。
问题的设计思路。
|
|