教育>本科研究生>计算机类
C语言程序设计——面向新工科  

C语言程序设计——面向新工科  "

作者:李俊
ISBN:9787121451218
定价:¥69.8
字数:512千字
页数:328
出版时间:2023-03
开本:16开
版次:01-01
装帧:
出版社:电子工业出版社
简介

本书由浅入深、循序渐进地介绍了C语言程序设计的思路和方法,并通过富有趣味性的精彩案例讲解将每章中的知识点融会贯通,同时给出了案例思路分析,提出了案例思考问题,从而提高读者的学习兴趣,培养读者的自主学习能力、独立思考能力和计算思维能力。本书共13章,系统地介绍了基于Visual Studio的C语言程序的开发环境、数据类型、运算符与表达式、基本输入与输出语句、流程控制、模块化程序设计方法、位运算符和位运算、标准文件的输入与输出操作、EasyX图形库和C++语言面向对象基础。 本书内容翔实、案例新颖、结构清晰、重点明确,以丰富有趣的案例驱动知识点教学。本书既可以作为高等院校计算机程序设计课程的教材,也可以作为计算机程序设计培训教材和各种计算机等级考试的参考教材。

前言

前言 C语言是目前国际上广泛流行的一种结构化程序设计语言,它兼具高级语言和低级语言的功能,提供类型丰富、使用灵活的基本运算和数据类型,具有较高的可移植性。C语言不仅适用于开发系统软件,也是开发应用软件和进行大规模科学计算的常用程序设计语言。 本书内容翔实、语言简明扼要、重点突出、案例新颖、趣味性强、结构清晰、可操作性强,适合新工科背景下的C语言教学。 本书具有如下主要特点。 1.知识点精炼,适合短学时教学 现在,各高校都在对各个课程进行学时压缩,而C语言程序设计课程的知识点又很繁多,那么应该如何让读者在短时间内掌握C语言程序设计的精髓呢?为了解决这个问题,作者对各个章节中的知识点进行了提炼,把一些不常用甚至几乎从来不用的知识点进行了删减。因此,本书能够满足短学时教学的需要。 2.案例新颖、趣味性强 本书中的每个案例都由作者精心设计,趣味性较强,通过这些案例,不仅可以提高读者的学习兴趣,还可以使读者对所学知识点举一反三,从而使读者能够更深刻地理解所学知识点。 3.通过精彩案例融合知识点 很多C语言书籍都是独立地介绍C语言的知识点,这样就会造成读者无法将C语言的知识点融为一个整体。为了解决这个问题,本书不仅对各个知识点配有案例及分析,除第1章外,每章还都有精彩案例分析,这些精彩案例将本章及前面各章的知识点综合起来,使读者能够直观地将这些知识点融为一体。 4.提高读者分析问题和独立思考问题的能力 在读者学习的过程中,经常会遇到这样的问题:书中的例子能看懂,教师讲的内容也能听明白,但是在遇到问题时,自己却无从下手。为了解决这个问题,作者在编写每个案例时,都先对案例进行分析,以提高读者分析问题的能力;然后编写代码,并在代码中给出大量的注释;最后在案例的后面会有一些思考问题,以提高读者独立思考问题的能力。 5.内容安排循序渐进、由易到难 本书内容安排循序渐进、由易到难,全书共13章。第1章介绍C语言的发展及特点,C语言程序的基本结构,C语言中的字符集、标识符与关键字,以及C语言程序的开发环境;第2章介绍C语言中的数据类型、常量与变量、运算符与表达式;第3章介绍算法、C语言基本语句、常用的输入与输出函数;第4章介绍if语句和switch语句的用法;第5章介绍C语言中常用的循环结构算法,while语句、do…while语句和for语句的用法,以及循环嵌套的用法;第6章介绍模块化设计的编程思想、函数、变量的作用域与存储类型,以及宏替换;第7章介绍数值数组与字符数组的应用;第8章介绍指针与指针变量的应用;第9章介绍用户自定义的3种数据类型(结构体类型、共用体类型和枚举类型)的应用;第10章介绍位运算符、位运算及位段;第11章介绍标准文件的输入与输出操作;第12章介绍EasyX图形库的相关内容;第13章介绍C++语言面向对象基础。 本书的作者具有多年的C语言程序设计和相关专业课程教学经验。本书由李俊担任主编并进行总体设计,由张欣负责编写第1章~第4章,由侯顺艳负责编写第5章~第7章,由李俊负责编写第8章~第13章并负责全书的统稿。 由于作者的水平有限,书中难免存在错误和不妥之处,敬请读者给予批评指正。 李 俊 2022年12月

目录

第1章 C语言程序设计概述 1 1.1 C语言的发展及特点 1 1.1.1 C语言的发展 1 1.1.2 C语言的特点 2 1.2 C语言程序的基本结构 3 1.3 C语言中的字符集、标识符与关键字 4 1.3.1 C语言中的字符集 4 1.3.2 C语言中的标识符与关键字 5 1.4 C语言程序的开发环境 5 1.4.1 C语言程序的开发过程 6 1.4.2 Microsoft Visual Studio 2010集成开发环境 6 本章小结 12 习题 12 第2章 数据类型、运算符与表达式 14 2.1 C语言中的数据类型 14 2.1.1 数据类型概述 14 2.1.2 整数类型 15 2.1.3 实数类型 16 2.1.4 字符类型 16 2.2 常量与变量 16 2.2.1 常量 16 2.2.2 变量 19 2.3 运算符与表达式 20 2.3.1 算术运算符与算术表达式 21 2.3.2 赋值运算符与赋值表达式 22 2.3.3 关系运算符与关系表达式 23 2.3.4 逻辑运算符与逻辑表达式 25 2.3.5 条件运算符、逗号运算符和求字节数运算符 27 2.4 运算符的优先级 28 2.5 数据类型转换 29 2.5.1 自动类型转换 29 2.5.2 强制类型转换 30 本章小结 31 习题 31 第3章 顺序结构 33 3.1 算法 33 3.1.1 算法的概念 33 3.1.2 算法的组成要素 34 3.1.3 算法的描述 35 3.2 C语言基本语句 36 3.3 数据的输入与输出 38 3.3.1 字符的输入与输出 38 3.3.2 格式化输出函数printf 40 3.3.3 格式化输入函数scanf 44 3.4 精彩案例 46 3.4.1 温度转换 47 3.4.2 进制转换 47 3.4.3 大小写字符转换 47 3.4.4 计算圆的周长和面积 48 3.4.5 人民币兑换美元计算 49 本章小结 49 习题 49 第4章 选择结构 51 4.1 if语句 51 4.1.1 单分支if语句 51 4.1.2 双分支if语句 53 4.1.3 多分支if语句 54 4.1.4 if语句的嵌套 56 4.2 条件表达式 58 4.3 switch语句 59 4.4 精彩案例 61 4.4.1 BMI计算 61 4.4.2 判断闰年 62 4.4.3 模拟计算器 63 本章小结 64 习题 64 第5章 循环结构 66 5.1 循环结构算法 66 5.2 while语句 68 5.3 do...while语句 69 5.4 for语句 71 5.5 break和continue语句 74 5.5.1 break语句 74 5.5.2 continue语句 75 5.6 循环结构的嵌套 76 5.7 精彩案例 77 5.7.1 猴子吃桃 77 5.7.2 整数质因数分解 78 5.7.3 电文加密 78 5.7.4 输出菱形 79 本章小结 81 习题 81 第6章 函数与宏替换 83 6.1 模块化设计 83 6.2 函数的定义与调用 84 6.2.1 函数的定义 84 6.2.2 函数的调用 86 6.2.3 参数的传递 89 6.3 函数的递归调用 90 6.4 变量的作用域与存储类型 93 6.4.1 变量的作用域 94 6.4.2 变量的存储类型 96 6.5 宏替换 100 6.5.1 宏替换 100 6.5.2 文件包含 103 6.6 精彩案例 104 6.6.1 判断回文数 104 6.6.2 判断完数 105 6.6.3 斐波那契数列 106 本章小结 107 习题 107 第7章 数组 110 7.1 概述 110 7.2 一维数组 111 7.2.1 一维数组的定义 111 7.2.2 一维数组的初始化 112 7.2.3 一维数组的引用 113 7.2.4 一维数组的应用 114 7.3 二维数组 118 7.3.1 二维数组的定义 119 7.3.2 二维数组的初始化 119 7.3.3 二维数组的引用 120 7.3.4 二维数组的应用 122 7.4 字符数组与字符串 123 7.4.1 字符数组的定义与初始化 124 7.4.2 字符串的概念及存储 124 7.4.3 字符数组的输入与输出 125 7.4.4 字符串处理函数 127 7.4.5 字符数组的应用 129 7.5 数组作为函数参数 131 7.6 精彩案例 134 7.6.1 身份证号校验 134 7.6.2 字符串连接 136 7.6.3 删除字符 137 7.6.4 统计单词个数 138 本章小结 139 习题 139 第8章 指针 141 8.1 指针与指针变量 141 8.1.1 指针的概念 141 8.1.2 指针变量的定义与初始化 142 8.1.3 指针运算 144 8.2 指针与数组 147 8.2.1 一维数组的指针表示法 147 8.2.2 二维数组的指针表示法 150 8.3 指针与字符串 154 8.3.1 字符串的指针表示方法 154 8.3.2 字符串数组与指针数组 157 8.4 指针与函数 159 8.4.1 指针变量作为函数的形参 159 8.4.2 指针型函数 165 *8.5 指向指针的指针变量 166 8.6 精彩案例 167 8.6.1 数字查找 167 8.6.2 字符串截取 169 8.6.3 字符串查找 170 本章小结 171 习题 172 第9章 结构体、共用体与枚举类型 174 9.1 结构体类型的定义 174 9.2 结构体类型变量 176 9.2.1 结构体类型变量的定义 176 9.2.2 结构体类型变量的使用 177 9.2.3 结构体类型变量的初始化 178 9.3 结构体数组 180 9.3.1 结构体数组的定义 180 9.3.2 结构体数组的初始化 181 9.3.3 结构体数组的使用 181 9.4 结构体类型指针 182 9.4.1 指向结构体类型变量的指针 182 9.4.2 指向结构体数组的指针 184 9.5 结构体与函数 186 9.5.1 结构体类型变量作为函数参数 186 9.5.2 结构体指针变量作为函数参数 187 9.5.3 函数返回值的类型为结构体类型 188 *9.6 链表 189 9.6.1 链表概述 189 9.6.2 内存管理函数 190 9.6.3 链表的基本操作 192 9.7 共用体类型 198 9.7.1 共用体类型与共用体类型变量 198 9.7.2 共用体类型变量的使用 199 9.8 枚举类型 202 9.9 精彩案例 205 9.9.1 链表存储职工信息 205 9.9.2 链表翻转 206 本章小结 208 习题 209 第10章 位运算 210 10.1 位运算符和位运算 210 10.2 位段 212 10.3 综合案例 214 本章小结 217 习题 217 第11章 文件 218 11.1 文件概述 218 11.2 文件的打开与关闭 220 11.2.1 文件指针 220 11.2.2 文件的打开 221 11.2.3 文件的关闭 222 11.3 文件读/写函数 223 11.3.1 读/写字符函数 223 11.3.2 读/写字符串函数 225 11.3.3 格式化读/写函数 227 11.3.4 块读/写函数 228 11.4 文件的定位与随机读/写 230 11.5 文件检测函数 233 11.6 精彩案例 234 11.6.1 文件加密 234 11.6.2 成绩信息管理 235 本章小结 237 习题 238 第12章 EasyX图形库 239 12.1 EasyX图形库安装 239 12.2 基本概念 240 12.2.1 颜色 240 12.2.2 坐标 242 12.2.3 设备 243 12.3 常用库函数 244 12.3.1 设备绘图相关函数 245 12.3.2 颜色转换函数 245 12.3.3 颜色及样式设置函数 246 12.3.4 图形绘制相关函数 249 12.3.5 文字输出相关函数 251 12.3.6 图像处理相关函数 255 12.4 精彩案例 257 12.4.1 模拟动态二维星空 257 12.4.2 绘制动态时钟 259 本章小结 261 习题 262 第13章 C++语言面向对象基础 263 13.1 C++语言简介 263 13.2 类和对象 265 13.2.1 类的定义和对象的声明 265 13.2.2 类的成员函数 267 13.2.3 类的构造函数与析构函数 269 13.2.4 C++类的访问修饰符 272 13.3 继承、重载和多态 275 13.3.1 类的继承 275 13.3.2 重载函数和重载运算符 278 13.3.3 多态 281 13.4 接口 283 13.5 精彩案例 285 13.5.1 计算正方体、球体和圆柱体的表面积与体积 285 13.5.2 学生和教师信息管理 287 本章小结 289 习题 290 附录A ASCII码表 291 附录B C语言运算符优先级和结合方向 292 附录C C语言常见的错误信息 293 附录D C语言常用算法 297 附录E C语言常用库函数 310

作者简介

编辑推荐

作者寄语

电子资料

www.luweidong.cn

下一个