新書推薦:
《
中国古代妇女生活(中国古代生活丛书)
》
售價:NT$
214.0
《
你的认知正在阻碍你
》
售價:NT$
296.0
《
我们身边的小鸟朋友:手绘观鸟笔记
》
售價:NT$
356.0
《
拯救免疫失衡
》
售價:NT$
254.0
《
收尸人
》
售價:NT$
332.0
《
大模型应用开发:RAG入门与实战
》
售價:NT$
407.0
《
不挨饿快速瘦的减脂餐
》
售價:NT$
305.0
《
形而上学与存在论之间:费希特知识学研究(守望者)(德国古典哲学研究译丛)
》
售價:NT$
504.0
|
編輯推薦: |
本书以程序设计的分析问题和解决问题为重点,采用“实例导入→问题提出→分析与应用”这一基本叙述模式,讲授在C/C 语言环境下程序设计的解题思路、算法设计和程序实现,从而帮助学生提高编程能力。
|
內容簡介: |
本书以程序设计的分析问题和解决问题为重点,采用“实例导入→问题提出→分析与应用”这一基本叙述模式,讲授在C/C 语言环境下程序设计的解题思路、算法设计和程序实现,从而帮助学习者提高编程能力。
本书在结构设计上,从有利于学习者学习的角度出发选择、组织和呈现教学内容。第一,本书在安排顺序上,先讲解函数,然后讲解数组、指针、结构等,这样便于学习者早接触函数,早使用函数,有利于学习者后续内容的学习;第二,本书强调实践,而不拘泥于基础知识,使学习者通过实践掌握基础知识,重点培养学习者的程序设计能力;第三,本书设计了一些专题,如迭代法、最大公约数的求解、素数判定等,总结了某一类问题的解决方法,既让学习者体验到程序设计的实用性,又能激发学习者的学习兴趣;第四,为满足学习者对在线开放学习的需求,本书的大部分实例配套了微课。
本书可以作为高等学校程序设计课程、等级考试、程序设计类竞赛、认证等的教学用书,也可以作为对C/C 语言程序设计感兴趣的学习者的自学用书。相信通过对本书的学习,学习者能打好坚实的程序设计基础。
|
目錄:
|
第1章概述/1
1.1计算机程序设计语言1
1.2编写程序的步骤1
1.2.1编码1
1.2.2编译2
1.2.3调试2
1.2.4维护2
1.3算法3
1.3.1算法的特性3
1.3.2算法的描述3
1.4用C/C 语言编写程序6
1.4.1输出“Hello,World!”6
1.4.2计算a b7
1.4.3比较大小8
1.4.4计算分段函数的值9
1.4.5输出奇偶数之和11
1.4.6画正方形11
练习112
第2章类型、运算符与表达式/15
2.1变量15
2.1.1变量的命名规则15
2.1.2变量的声明16
2.2数据类型及长度16
2.2.1short与long限定符17
2.2.2signed与unsigned限定符17
2.2.3printf和scanf格式转换符17
2.3常量19
2.3.1整数常量与浮点数常量19
2.3.2字符常量20
2.3.3字符串常量20
2.3.4符号常量21
2.3.5枚举常量22
2.4算术运算符22
2.5关系运算符与逻辑运算符22
2.6自增运算符与自减运算符24
2.7逗号运算符25
2.8赋值运算符与赋值表达式26
2.9条件运算符与条件表达式26
2.10数值类型转换27
2.11运算符的优先级及求值次序28
练习229
〖1〗程序设计基础目录〖3〗〖3〗第3章分支结构/33
3.1实例导入33
3.2语句与程序块34
3.3ifelse语句34
3.4elseif语句36
3.5switch语句38
3.6应用实例42
练习344
第4章循环结构/48
4.1实例导入48
4.2while循环51
4.3for循环54
4.4dowhile循环57
4.5三种循环语句的比较60
4.6循环结构的嵌套60
4.7break语句与continue语句63
4.8专题1: 正整数的拆分65
4.9专题2: 迭代法68
4.10应用实例70
练习475
第5章输入与输出/84
5.1getchar()函数84
5.2putchar()函数85
5.3scanf()函数86
5.4printf()函数87
5.5C 格式化控制台输出89
5.6应用实例92
练习599
第6章函数/101
6.1实例导入101
6.2函数的基本知识103
6.2.1函数的定义103
6.2.2函数的调用104
6.2.3函数的声明108
6.2.4函数设计的基本原则111
6.3以引用方式传递参数111
6.4局部、全局和静态变量114
6.4.1for循环中变量的作用域114
6.4.2静态局部变量115
6.5函数的递归调用119
6.6专题3: 最大公约数的求解122
6.6.1欧几里得算法123
6.6.2更相减损法124
6.7应用实例124
练习6126
第7章数组/132
7.1实例导入132
7.2一维数组133
7.2.1一维数组的定义133
7.2.2一维数组元素的引用134
7.2.3一维数组的初始化135
7.2.4一维数组的应用举例136
7.3二维数组141
7.3.1二维数组的定义142
7.3.2二维数组元素的引用142
7.3.3二维数组的初始化143
7.3.4二维数组的应用举例144
7.4数组与函数147
7.5查找149
7.5.1顺序查找149
7.5.2折半查找149
7.6排序150
7.6.1选择排序150
7.6.2冒泡排序151
7.7专题4: 素数153
7.7.1判断某个数是否是素数153
7.7.2一定范围内所有素数的求解155
练习7156
第8章字符串与文件操作/161
8.1字符数组161
8.1.1字符数组的定义和引用161
8.1.2字符数组的初始化161
8.1.3字符数组的输入与输出163
8.1.4字符数组的应用举例164
8.2string类型字符串168
8.2.1构造一个字符串168
8.2.2读字符串168
8.2.3操作字符串的函数168
8.2.4string的应用举例171
8.3文件操作与重定向175
8.3.1读写文件175
8.3.2重定向176
8.4专题5: 进制转换177
练习8179
第9章指针/183
9.1实例导入183
9.2指针的基本知识186
9.2.1指针变量的声明186
9.2.2指针变量的初始化186
9.2.3指针变量的基本运算187
9.3指针与数组189
9.3.1指针与一维数组189
9.3.2指针与多维数组194
9.4指针与函数195
9.4.1函数的形参是指针195
9.4.2函数返回指针197
9.4.3指向函数的指针197
9.5字符指针与函数198
9.6指针数组199
9.6.1指针数组的声明199
9.6.2指针数组的初始化199
9.6.3指针数组与二维数组的区别199
9.7命令行参数200
9.8指向指针的指针201
9.9动态持久内存分配202
练习9203
第10章结构/207
10.1实例导入207
10.2结构的基本知识209
10.2.1结构类型的定义210
10.2.2结构变量的定义210
10.2.3结构成员的访问211
10.2.4对结构变量的操作211
10.2.5结构变量的初始化212
10.2.6结构的嵌套213
10.3结构数组213
10.4结构指针216
10.5typedef217
10.6结构与函数218
10.7单链表219
10.7.1单链表的创建220
10.7.2单链表的输出220
10.7.3单链表的插入221
10.7.4单链表的删除223
10.7.5链表的综合操作224
10.8应用实例226
10.8.1用结构数组实现227
10.8.2用单链表实现228
练习10230
第11章位运算/236
11.1原码、反码和补码236
11.2位运算符236
11.2.1与运算符236
11.2.2或运算符237
11.2.3异或运算符237
11.2.4取反运算符238
11.2.5左移运算符和右移运算符238
11.3位赋值运算符241
11.4应用实例241
练习11243
第12章大串讲/246
12.1顺序输出整数的各位数字246
12.2阶乘和248
12.3斐波那契数列250
12.4计算函数的值252
12.5数列有序254
12.6数的转移256
12.7有理数四则运算258
12.8德才论260
12.9天长地久262
附录/265
附录A常用字符与ASCII对照表265
附录B常用的库函数266
B.1数学函数266
B.2字符处理函数268
B.3字符串处理函数269
B.4实用函数270
附录C与具体实现相关的限制270
附录DHack271
附录E对拍271
参考文献/275
|
內容試閱:
|
习近平总书记在党的二十大报告中强调,必须坚持科技是第一生产力、人才是第一资源、创新是第一动力,深入实施科教兴国战略、人才强国战略、创新驱动发展战略,开辟发展新领域新赛道,不断塑造发展新动能新优势。
计算机是科技领域伟大的发明,科技发展离不开计算机技术。要掌握和应用计算机技术,首先就要打好基础,学习计算机基本原理,掌握计算机程序设计。
程序设计是高校理工科专业重要的计算机基础课程,该课程以培养学习者掌握程序设计的思想和方法为目标,以培养学习者的实践能力和创新能力为重点。C/C 语言是得到广泛使用的程序设计语言之一,它们既具备高级语言的特性,又具有直接操纵计算机硬件的能力,并以其良好的程序结构和便于移植的特性而拥有大量的使用者。目前,许多高校都把C/C 语言列为首门要学习的程序设计语言。
虽然目前有关C/C 语言的教材很多,但一些教材比较注重C/C 语言知识的学习,不利于培养学习者的程序设计能力和语言应用能力。本书以程序设计为主线,从应用出发,通过案例和问题引入相关的语法知识,重点讲解程序设计的思想和方法,并始终贯彻全书。本书避免机械式地记忆语法知识,持守通过写程序去掌握C/C 语言知识的理念。
在结构设计上,本书强调学以致用,使学习者从接触C/C 语言开始就练习编程。全书共12章,为了提高学习者的学习兴趣,大多是先导入实例,而后介绍相关的语言知识。
第1章简单介绍一些背景知识和利用计算机解决问题的步骤,然后从实例出发,简要介绍C/C 语言的核心部分,使学习者对C/C 语言有一个总体的了解,并学习编写简单的程序,培养学习兴趣;第2章介绍基本的数据类型和常用运算符;第3章和第4章分别讲解分支结构、循环结构程序设计的思路和方法(本书从第3章开始,逐步深入讲解程序设计的思想和方法,说明如何应用语言解决问题);第5章讲解基本的输入与输出处理;第6章讲解函数的基本知识及基本用法;第7章讲解一维数组、二维数组的知识和应用;第8章全面讲解字符串(C字符串和C 的string)及其应用,最后介绍文件的基本操作及其应用;第9章介绍指针的基本概念及其应用;第10章讲解结构的基本知识及其应用;第11章讲解位运算及其应用;第12章大串讲,帮助学习者对全书知识点的融会贯通,并加以运用。
本书有如下特色: (1) 注重知识内容的实用性和综合性。本书结合应用型本科教育的特点,注重知识内容的实用性和综合性,删减以往类似教材中较刻板的理论知识点,将更多的篇幅放在程序设计方法、程序设计技能以及程序设计过程的阐述上。
(2) 设计了一些专题。本书安排了如下几个专题: 正整数的拆分、迭代法、最大公约数的求解、素数判定、进制转换。这些专题既总结了某一类问题的解决方法,又让学习者体验到程序设计的实用性,激发学习者的学习兴趣。
(3) 图文并茂。西方有句谚语“A picture is worth a thousand words”(一图值千言),意思是用上千字描述不明白的东西,很可能一张图就能解释清楚。本书基本上做到对难理解的内容都有相关的图示辅助讲解,有的内容还通过多图逐步分解剖析。
(4) 讲练结合,强调做中学。本书很多的例题和习题来源于经典的“在线评测系统”(OJ),学习者可以提交代码在指定的OJ上自动评测,确保所写程序正确;也可以多次练习,提高实践能力,增强趣味性。
(5) 为满足学习者对在线开放学习的需求,本书对一些重要的知识点、重要或难懂的例子,都有配套的微课,这样学习者便能走进编者的教学课堂,而且能重复学习,做到攻克重点、难点,不留学习的死角。
因编者水平有限,书中难免存在疏漏、谬误之处,敬请批评指正。
编者
2024年5月
|
|