华信教育资源网
C语言程序设计——基于计算思维的培养
丛   书   名: 计算机类本科规划教材
作   译   者:曾智勇 出 版 日 期:2020-03-01
出   版   社:电子工业出版社 维   护   人:冉哲 
书   代   号:G0384610 I S B N:9787121384615

图书简介:

本书以C语言为工具,力图用最简明的语言、最典型的实例,介绍计算思维和程序设计的基本方法,把它们的核心思想贯穿于C语言的介绍中,目的是使读者在学习C语言以后,能够用计算思维和程序设计的方法解决相关领域中的实际问题。 本书分13章,内容包括:C语言基本概念,数据类型与表达式,格式化输入与输出,选择结构,循环结构,函数,数组,指针,字符串,指针与数组,自定义数据类型,文件,构建大规模程序。每单后均有习题,扫描第1~12章后的二维码,可以获取本章知识点小结和本章常见错误小结。本书免费提供电子课件,登录华信教育资源网(www.hxedu.com.cn)注册后下载。
您的专属联系人更多
关注 评论(6) 分享
配套资源 图书内容 样章/电子教材 图书评价
  • 配 套 资 源
    图书特别说明:

    本书资源

    会员上传本书资源

  • 图 书 内 容

    内容简介

    本书以C语言为工具,力图用最简明的语言、最典型的实例,介绍计算思维和程序设计的基本方法,把它们的核心思想贯穿于C语言的介绍中,目的是使读者在学习C语言以后,能够用计算思维和程序设计的方法解决相关领域中的实际问题。 本书分13章,内容包括:C语言基本概念,数据类型与表达式,格式化输入与输出,选择结构,循环结构,函数,数组,指针,字符串,指针与数组,自定义数据类型,文件,构建大规模程序。每单后均有习题,扫描第1~12章后的二维码,可以获取本章知识点小结和本章常见错误小结。本书免费提供电子课件,登录华信教育资源网(www.hxedu.com.cn)注册后下载。

    图书详情

    ISBN:9787121384615
    开 本:16开
    页 数:300
    字 数:556.0

    本书目录

    第1章 C语言基本概念 1
    1.1 计算机语言和程序 1
    1.1.1 计算机语言 1
    1.1.2 计算机程序 1
    1.1.3 C语言 2
    1.1.4 程序设计 2
    1.2 算法和算法表示 3
    1.2.1 算法的概念 4
    1.2.2 算法的特征 5
    1.2.3 算法的表示 6
    1.2.4 算法的优化 12
    1.2.5  结构化程序设计方法 14
    1.3 C语言编程 17
    1.4 变量、表达式和赋值 19
    1.5 从键盘读取输入 20
    1.6 常量定义 21
    1.7 标识符 23
    1.8  C程序的结构特点 24
    1.9  C语言编程风格 25
    习题1 26
    第2章  数据类型与表达式 28
    2.1 变量声明与表达式 28
    2.2 基本数据类型 28
    2.3 整型 29
    2.4 浮点型 30
    2.5 算术运算符与表达式 31
    2.5.1 算术运算符 31
    2.5.2 算术表达式 33
    2.6  赋值运算符与表达式 34
    2.6.1  赋值运算符 34
    2.6.2  赋值表达式 34
    2.6.3  复合赋值运算符及表达式 35
    2.7 自增/自减运算符 36
    2.8 字符型 36
    2.9 字符处理函数 38
    2.10  类型转换 40
    2.11 类型定义 42
    习题2 43
    实验题 46
    第3章  格式化输入与输出 47
    3.1 输出函数 47
    3.2 输入函数 50
    习题3 55
    实验题 56
    第4章  选择结构 57
    4.1 关系、等式和逻辑运算符 57
    4.2 逻辑运算符和表达式 58
    4.3 复合语句 59
    4.4 空语句 59
    4.5 if语句 59
    4.6 if-else语句 61
    4.7 if语句的嵌套 62
    4.8 级联式语句 66
    4.9 switch语句 67
    4.10 条件表达式 69
    4.11 程序举例与测试 70
    4.12 本章扩展内容:位运算 73
    4.12.1 位运算符 73
    4.12.2 位逻辑运算 73
    4.12.3 移位运算 74
    4.12.4 复合位运算赋值运算符 75
    4.12.5 位运算的应用 75
    习题4 76
    实验题 81
    第5章  循环结构 82
    5.1  循环结构与循环语句 82
    5.2  计数控制的循环 87
    5.3  嵌套循环 89
    5.4  条件控制的循环 91
    5.5  流程的控制转移 95
    5.5.1  break语句 95
    5.5.2  continue语句 96
    5.5.3  goto语句 98
    5.6  应用举例 99
    习题5 103
    实验题 105
    第6章  函数 107
    6.1  模块化程序设计 107
    6.2  函数的定义 108
    6.2.1  函数的分类 108
    6.2.2  函数的定义 108
    6.3  函数调用 109
    6.4  函数原型声明 111
    6.5  函数封装与防御性编程 113
    6.6  函数设计的基本原则 118
    6.7  函数的嵌套调用 119
    6.8  函数的递归调用和递归函数 120
    6.9  变量的作用域和存储类型 122
    6.9.1  变量的作用域 122
    6.9.2  变量的存储类型 124
    6.10  模块化程序设计实例 128
    习题6 132
    实验题 135
    第7章  数组 136
    7.1  一维数组 136
    7.2  二维数组 138
    7.3  一维数组作为函数参数 140
    7.4  排序与查找 144
    7.5  二维数组作为函数参数 152
    习题7 154
    实验题 157
    第8章  指针 158
    8.1  指针和指针变量 158
    8.2  指针变量的定义和初始化 158
    8.3  间接寻址运算符 161
    8.4  指针变量作为函数参数 163
    8.5  指针变量作为函数参数应用举例 166
    8.6  函数指针及其应用 171
    习题8 174
    实验题 176
    第9章  字符串 178
    9.1  字符串常量 178
    9.2  字符串的存储 178
    9.3  字符指针 179
    9.4  字符串的读/写 180
    9.5  字符串处理函数 184
    9.6  字符串作为函数参数 186
    9.7  从函数返回字符串指针 187
    习题9 189
    实验题 191
    第10章  指针与数组 192
    10.1  指针的运算 192
    10.2  指针和一维数组的关系 192
    10.3  指针和二维数组的关系 197
    10.4  指针数组及其应用 201
    10.5  动态数组 205
    10.5.1  C程序的内存映像 205
    10.5.2  动态内存分配函数 206
    10.5.3  一维动态数组的内存分配 208
    10.5.4  二维动态数组的内存分配 209
    习题10 211
    实验题 212
    第11章  自定义数据类型 214
    11.1  用户自定义数据类型和信息隐藏 214
    11.2  结构体的定义 214
    11.3  结构体变量的初始化 216
    11.4  结构体的嵌套 217
    11.5  结构体变量的引用 217
    11.6  结构体变量在内存中的存储形式 219
    11.7  结构体数组的定义和初始化 220
    11.8  结构体指针的定义和初始化 223
    11.9  结构体作为函数参数 224
    11.10  共用体 229
    11.11  枚举类型 231
    11.12  单向链表 234
    11.12.1  问题的提出 234
    11.12.2  链表 234
    11.12.3  单向链表的创建 235
    11.12.4  单向链表的搜索 237
    11.12.5  从单向链表中删除节点 238
    习题11 242
    实验题 244
    第12章  文件 246
    12.1  文件分类 246
    12.2  文件的打开与关闭 247
    12.3  顺序读/写文件 248
    12.3.1  读/写字符 248
    12.3.2  读/写字符串 251
    12.3.3  格式化读/写文件 253
    12.3.4  读/写数据块 257
    12.4  随机读/写文件 260
    12.5  标准输入/输出重定向 262
    习题12 263
    实验题 265
    第13章  构建大规模程序 266
    13.1  头文件 266
    13.1.1  #include指令的使用 266
    13.1.2  定义共享类型和宏 266
    13.1.3  共享函数原型 267
    13.1.4  共享变量声明 268
    13.1.5  嵌套包含 268
    13.1.6  保护头文件 268
    13.1.7  头文件中的#error指令 269
    13.2  源文件 269
    13.3  多文件程序的设计 269
    13.4  构建多文件程序 273
    13.4.1  makefile文件 274
    13.4.2  链接错误 274
    13.4.3  重构程序 275
    13.4.4  在程序外定义宏 276
    习题13 277
    实验题 277
    附录A  Dev-C++和Visual C++下基本数据类型的取值范围 278
    附录B  关键字 278
    附录C  运算符的优先级与结合性 279
    附录D  ASCII字符表 280
    附录E  ANSI C标准库函数 282
    附录F  Dev-C++集成开发环境 289
    参考文献 292
    展开

    前     言

    C语言自推出以来,一直受到人们的广泛欢迎。长期以来,学术界和工业界都在广泛使用ANSI C编程语言。在世界各地的很多教育机构中,它是程序设计课程和计算机科学教育的首选语言。因为从许多入门级课程到高级课程都可选择C语言。此外,C语言带有很多有用的库,并得到许多复杂而安全的集成开发环境的支持。由于C语言是使用方便、目前执行效率最高的语言,因此在人工智能、云计算领域,深度学习平台和云计算平台的底层基础架构都使用C语言实现。同时,ANSI C还在不断得到改进、完善和拓展,这些变化以及C语言在操作系统、数据库、图形系统、嵌入式系统等方面的广泛影响,使得C语言成为学习程序设计和计算机科学的首选。
    本书以C语言为工具,力图用最简明的语言、最典型的实例,介绍计算思维和程序设计的基本方法,把它们的核心思想贯穿于C语言的介绍中,目的是使读者在学习C语言以后,能够用计算思维和程序设计的方法解决相关领域中的实际问题。
    全书分13章,内容包括:C语言基本概念,数据类型与表达式,格式化输入与输出,选择结构,循环结构,函数,数组,指针,字符串,指针与数组,自定义数据类型,文件,构建大规模程序。
    本书试图达到以下目的:
       本书通过提供详细的解题思路来描述问题所涉及的编程元素和解决问题所需要的方法及解题步骤,采用三种基本结构、自顶向下和结构化程序设计方法,并通过大量的流程图或N-S图来描述算法,为编写程序提前进行代码预排,帮助读者更好地理解和评价问题所涉及的编程思想。
       通过详细分析示例程序,向读者展现了清晰而完整的程序设计过程,描述了代码的关键特征,目的是让读者掌握一些习惯语法,以便在遇到新情况时作为参考。这种对程序和函数的解析方法有利于突出不同上下文应用中的关键思想。
       本书假设读者没有任何编程背景,既可以是学生及计算机用户,也可以是有经验的但不熟悉C语言、需要掌握结构化程序设计方法的程序员。本书的每章都给出了一些带有详细注释的示例程序,通过这些程序,引导读者编写具有结构化特征的函数。能编写函数是一名合格程序员的标志。
       为了提高代码的重用效率和权威性,本书在示例程序中尽可能涵盖所有的ANSI C的特性和库函数。同时,为了避免给读者造成不必要的学习负担,忽略了这些特性和库函数的一些不必要的细节。
       根据作者多年教授C语言的经验,本书采用循序渐进的方式来展现C语言的特性。针对某些有一定难度的主题,如函数和指针,本书采用螺旋式的描述方法,即对较难的主题先进行简要介绍,然后在多个章节中再多次介绍该主题,逐渐丰富该主题的细节内容。这种循序渐进的方式,使前后内容由浅入深,相互呼应,既防止了内容单调,又避免了知识点过于集中而造成的艰难晦涩。
       本书使用了尽可能多的图来展现函数中变量的状态和C语言特性,试图通过图来展示程序运算过程中不同阶段的数据状态并动态地描述算法。
       除介绍C语言特性和编程思想外,还特别强调程序设计过程中所要解决的软件工程问题,即如何运用C语言来处理大规模程序开发过程中产生的问题,使编写的程序具有易读性、可维护性、可靠性和可移植性。在函数设计中,尤其强调信息隐藏和代码的重用性。
    本书具有以下特色:
       全书所有代码使用统一的代码规范编写,并强调程序代码的健壮性。书中例题、习题、实验题的内容选取兼具趣味性和实用性,例题以学习C语言特性和编程思想,培养计算思维为目的;习题以巩固基本知识点和掌握程序设计方法为目的,难度呈阶梯状,题型包括选择题、程序填空、阅读程序和编程题等;实验题从“巩固基础、综合设计、创新应用”三个层次进行设计,围绕一个综合应用实例逐步展开模块化设计,以任务驱动方式,引导读者实现具有一定规模、贯穿全书知识点的学生成绩管理系统。
       设置警告。C语言以其陷阱多而闻名,本书将程序设计过程中最常见或最重要的陷阱设置成警告,以警示读者可能掉入的陷阱。
       设置惯用法。C程序中经常出现一些通用的代码模式,本书将其设置为惯用法,以方便读者快速掌握。
       扫描第1~12章后的二维码,可以获取:本章知识点小结,用于复习本章内容,并加深理解本章中提出的新思想;本章常见错误小结,给出典型编程错误示例以及防止这些错误的方法,帮助读者避免错误。
       附录提供了有价值的参考资料信息。
       免费提供电子课件,登录华信教育资源网(www.hxedu.com.cn)注册后即可下载。
    本书由曾智勇编著,浙江工业大学计算机科学与技术学院的王万良教授/院长在百忙之中仔细审阅了全部初稿,并提出了许多宝贵的意见和建议。作者在此对他的辛勤付出表示衷心感谢。
    因作者水平所限,书中错误在所难免,欢迎广大读者对本教材提出宝贵的意见和建议。

    作者
    2019年于福建师范大学数学与信息学院
    展开

    作者简介

    本书暂无作者简介
  • 样 章 试 读
  • 图 书 评 价
华信教育资源网