图书盲袋,以书为“药”
欢迎光临中图网 请 | 注册
> >
C程序设计与案例教程

C程序设计与案例教程

出版社:科学出版社出版时间:2021-11-01
开本: 16开 页数: 352
中 图 价:¥64.1(7.2折) 定价  ¥89.0 登录后可看到会员价
加入购物车 收藏
运费6元,满39元免运费
?新疆、西藏除外
本类五星书更多>

C程序设计与案例教程 版权信息

  • ISBN:9787030704528
  • 条形码:9787030704528 ; 978-7-03-070452-8
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 所属分类:>

C程序设计与案例教程 本书特色

适读人群 :程序设计初学者,适合作为高等院校程序设计通识课以及计算机专业、大数据专业、信息管理与信息系统及相关专业的教学用书,也可作为C语言程序设计爱好者、程序设计培训、考研辅导、软件应用开发人员、编程自学人员以及计算机等级考试的参考书。C语言自诞生以来一直以其简单、通用经久不衰,本教材以精心设计的案例贯穿,知行合一地带领读者触摸C语言这一程序设计的灵魂

C程序设计与案例教程 内容简介

本教材以学生为中心设计教学内容,落实新时代立德树人根本任务,通过案例循序渐进地引导学生掌握C语言程序设计的思想、方法和技能,提升自主学习能力、探索创新能力。全书分9章,内容涵盖C语言基础知识、顺序结构、选择结构、循环结构、数组、函数、指针、结构体与共用体、文件。每章配有思维导图、学习任务、案例、答疑解惑、习题和实验项目等内容,教学内容蕴含课程思政元素,具有润物细无声的教学效果。 本教材面向程序设计初学者,适合作为高等院校程序设计通识课以及计算机专业、大数据专业、信息管理与信息系统及相关专业的教学用书,也可作为C语言程序设计爱好者、程序设计培训、考研辅导、软件应用开发人员、编程自学人员以及计算机等级考试的参考书。

C程序设计与案例教程 目录

目录
第1章 走进C语言世界 1
1.1 初识常春藤式的C语言 2
1.1.1 范例:全球首个C演示程序 2
1.1.2 C语言的前世今生 2
1.1.3 C程序基本结构 5
1.1.4 C语言编程规范 8
1.2 C程序设计基础 8
1.2.1 C程序设计思想方法 8
1.2.2 C程序设计灵魂——算法 9
1.2.3 C程序设计过程 12
1.2.4 C程序开发环境 12
1.2.5 C程序实现步骤 17
1.3 案例 18
1.3.1 求两数中的小值 18
1.3.2 超市管理系统界面设计 19
1.4 答疑解惑 20
习题1 22
实验项目1 简单的C程序设计 24
第2章 踏上顺序结构编程之舟 26
2.1 顺序结构程序设计 27
2.1.1 范例:计算圆环面积 27
2.1.2 顺序结构的特点 28
2.1.3 顺序结构设计方法 28
2.2 C语言的字符集、标识符与关键字 29
2.2.1 字符集 29
2.2.2 标识符 29
2.2.3 关键字 30
2.3 数据类型 31
2.3.1 数据类型的分类 32
2.3.2 不同数据类型的转换 33
2.3.3 常量 35
2.3.4 变量 38
2.4 运算符与表达式 43
2.4.1 算术运算符及其表达式 43
2.4.2 赋值运算符及其表达式 47
2.4.3 逗号运算符及其表达式 48
2.4.4 运算符优先级与结合性 48
2.5 基本语句 49
2.5.1 表达式语句 50
2.5.2 函数调用语句 51
2.5.3 控制语句 51
2.5.4 复合语句 52
2.5.5 空语句 52
2.6 常用输入输出函数 52
2.6.1 格式输入输出函数 52
2.6.2 字符输入输出函数 59
2.7 顺序结构案例 60
2.8 答疑解惑 61
习题2 64
实验项目2 顺序结构程序设计 67
第3章 畅游选择结构程序 70
3.1 选择结构程序设计 71
3.1.1 范例:BMI判断成年人是否肥胖 71
3.1.2 选择结构的思想方法 72
3.1.3 选择结构程序设计步骤 72
3.2 关系运算 72
3.2.1 关系运算符及其优先级 72
3.2.2 关系表达式 73
3.3 逻辑运算 74
3.3.1 逻辑运算符及其优先级 74
3.3.2 逻辑表达式 75
3.4 条件运算 78
3.4.1 条件运算符 78
3.4.2 条件表达式 78
3.5 if语句实现选择结构 79
3.5.1 if语句 79
3.5.2 嵌套的if语句 82
3.6 多分支switch语句实现选择结构 84
3.6.1 switch语句 84
3.6.2 break语句 85
3.6.3 嵌套的switch语句 86
3.7 选择结构程序案例 86
3.8 答疑解惑 88
习题3 89
实验项目3 选择结构程序设计 92
第4章 探秘循环结构程序 96
4.1 范例:将明文变成密码 97
4.2 while语句 98
4.3 do-while语句 100
4.4 for语句 101
4.5 循环嵌套 105
4.6 三种循环语句的比较 108
4.7 循环控制转移语句 108
4.7.1 break语句 108
4.7.2 Continue语句 110
4.8 循环结构程序案例 111
4.8.1 百鸡问题 111
4.8.2 判断获奖人员 111
4.9 答疑解惑 113
习题4 113
实验项目4 循环结构程序设计 116
第5章 数组处理批量数据 118
5.1 数组概述 119
5.2 一维数组 119
5.2.1 一维数组的定义 119
5.2.2 一维数组的引用 120
5.2.3 一维数组的初始化 121
5.2.4 一维数组应用举例 124
5.3 二维数组 128
5.3.1 二维数组的定义 128
5.3.2 二维数组的引用 128
5.3.3 二维数组的初始化 129
5.3.4 二维数组应用举例 130
5.4 字符数组 132
5.4.1 字符数组的定义 132
5.4.2 字符数组的初始化 132
5.4.3 字符数组的引用 133
5.4.4 字符数组的输入输出 134
5.4.5 常用字符串处理函数 137
5.5 数组应用案例 142
5.5.1 Fibonacci数列 142
5.5.2 投掷硬币 143
5.6 答疑解惑 144
习题5 145
实验项目5 数组的应用 148
第6章 函数实现模块化程序设计 150
6.1 函数概述 151
6.1.1 函数编程的思想 151
6.1.2 C程序模块化组成结构 151
6.2 函数定义与分类 151
6.2.1 库函数 152
6.2.2 用户自定义函数 153
6.3 函数调用 156
6.3.1 函数声明与原型 156
6.3.2 函数调用形式 158
6.3.3 参数传递和返回值 158
6.4 函数嵌套与递归 165
6.4.1 函数嵌套调用 165
6.4.2 函数递归调用 168
6.5 数组作为函数的参数 172
6.5.1 数组元素作函数参数 173
6.5.2 数组名作函数参数 174
6.6 变量作用域与存储类别 182
6.6.1 空间属性——局部变量和全局变量 182
6.6.2 时间属性——变量的存储类别 187
6.7 编译预处理 195
6.7.1 文件包含 195
6.7.2 宏定义 196
6.7.3 条件编译 201
6.8 函数程序案例 202
6.9 答疑解惑 204
习题6 206
实验项目6 函数的应用 210
第7章 揭开指针的面纱 212
7.1 地址与指针 213
7.1.1 地址与指针的概念 213
7.1.2 直接访问与间接访问 215
7.2 指针与指针变量 215
7.2.1 指针变量的定义 216
7.2.2 指针变量的初始化 216
7.2.3 指针变量的引用方法 217
7.2.4 指针运算 221
7.2.5 特殊指针 224
7.3 指针与数组 228
7.3.1 指针指向一维数组 228
7.3.2 指针指向二维数组 230
7.4 指针与字符串 234
7.4.1 字符型指针处理字符串 234
7.4.2 字符型指针作函数参数 237
7.5 指针与函数 238
7.5.1 指向函数的指针变量 238
7.5.2 指针变量作函数参数 239
7.5.3 数组名作函数参数 242
7.5.4 指针型函数 245
7.6 指针数组 246
7.6.1 指针数组的定义 246
7.6.2 指针数组作函数参数 248
7.6.3 主函数的参数 250
7.7 指针程序案例 251
7.8 答疑解惑 254
习题7 258
实验项目7 指针的应用 262
第8章 结构体、共用体、枚举及用户自定义类型 265
8.1 结构体 266
8.1.1 结构体类型 266
8.1.2 结构体变量的定义 267
8.1.3 结构体变量的初始化 269
8.1.4 结构体变量的引用 270
8.2 结构体数组 273
8.2.1 结构体数组的定义和初始化 274
8.2.2 结构体数组的引用 274
8.3 结构体指针 276
8.3.1 指向结构体变量的指针 276
8.3.2 指向结构体数组的指针 278
8.3.3 结构体指针作函数的参数 281
8.4 结构体与函数 282
8.4.1 结构体变量作函数的参数 282
8.4.2 结构体指针作函数的参数 283
8.4.3 结构体数组作函数的参数 284
8.5 共用体 285
8.5.1 共用体类型 286
8.5.2 共用体与结构体嵌套 286
8.6 枚举 288
8.6.1 枚举类型 290
8.6.2 枚举类型变量的定义 291
8.6.3 枚举类型变量的使用 292
8.6.4 枚举类型变量的长度 294
8.7 用定义符typedef声明类型别名 294
8.8 结构体与共用体程序案例 296
8.9 答疑解惑 297
习题8 298
实验项目8 结构体与共用体的应用 301
第9章 文件操作方法 303
9.1 文件概述 304
9.1.1 文件概念 304
9.1.2 文本流与数字流 304
9.1.3 文件的分类 305
9.2 文件的打开与关闭 306
9.2.1 文件指针 306
9.2.2 文件打开与关闭方式 306
9.2.3 文件操作顺序 309
9.3 文件的读写 309
9.3.1 以字符形式读写文件 309
9.3.2 以字符串形式读写文件 314
9.3.3 以数据块形式读写文件 316
9.3.4 格式化读写文件 320
9.3.5 随机读写文件 323
9.4 文件位置指针函数 325
9.4.1 fseek()定位函数 325
9.4.2 rewind()复位函数 326
9.4.3 ftell()查询函数 326
9.5 文件检测函数 327
9.5.1 feof()文件结束检测函数 327
9.5.2 ferror()文件出错检测函数 327
9.5.3 Clearerr()清除函数 328
9.6 exit()函数 328
9.6.1 exit()函数定义与使用 328
9.6.2 exit()函数与return语句的比较 328
9.7 文件程序案例 328
9.8 答疑解惑 334
习题9 336
实验项目9 文件操作 339
参考文献 341
附录 C语言常见编译错误信息 342
展开全部

C程序设计与案例教程 节选

第1章 走进C语言世界 本章思维导图 学习任务 1.了解C语言的特点与应用领域; 2.掌握C程序的基本组成与书写规范; 3.初步掌握C程序设计的基本思想方法; 4.初步掌握C程序设计的算法; 5.掌握C程序的开发环境与调试步骤; 6.能读懂简单的C程序。 1.1 初识常春藤式的 C语言 1.1.1 范例:全球首个 C演示程序 在计算机发展史上,没有哪一种程序设计语言能像 C语言这样充满魅力。著名的计算机科学家 Brian W. Kernighan与 C语言开发者 Dennis M. Ritchie合著 The C Programme Language于 1978年出版,成为 C语言方面*权威的经典教材之一。该书将“ hello, world”(小写,中间用逗号分隔)作为开篇**个程序,虽然之后几乎没流传下来这个*初的格式,但从此在学习一门新语言的时候用“ Hello World!”作为起步已成为计算机程序界的一个传统。 “Hello World!”程序如下: #include /*编译预处理命令 */ #include void main() /*主函数 */ { /*函数体开始 */ printf("Hello World! "); /*输出一行问候语 Hello World! */ system("pause"); /*显示运行结果可暂停,按任意键继续 */ } /*函数体结束 */ 程序运行结果如图1-1所示。 【试一试】编写程序,使运行结果如下: 我爱你, C语言! 我走进了大学校园!! 我更加爱你,中国!!! 图1-1 “Hello World!”C语言演示程序的运行结果 1.1.2 C语言的前世今生 . 20世纪 60年代末至 70年代初,美国计算机科学学者 Kenneth L. Thompson在贝尔实验室工作期间,以 BCPL(basic combined programming language)为基础,设计出更接近硬件的 B语言(取 BCPL的首字母),并使用 B语言编写一个游戏 “ Space Travel”,他想使用当时空闲的一台机器 PDP-7玩这个游戏,但是这台机器没有操作系统,于是他用 B语言为 PDP-7开发了操作系统,随后与同在贝尔实验室的另一位高级研究员 Dennis M. Ritchie合作开发,该系统命名为 Unix。Dennis M. Ritchie也很想玩“Space Travel”,于是进一步改进 B语言,取 BCPL第二个字母作为新语言的名字,称为 C语言。1972年 C语言的诞生是程序设计语言发展过程中的一个重要里程碑,此后, C语言一直在系统编程、嵌入式编程等领域占据着主宰地位。其后新生的语言如 C++、Java、C#、Python等都借鉴了 C语言的思想与语法,并在各自领域大获成功。美国国家标准学会(ANSI)于 1983年专门成立 C语言标准委员会,完成 C语言的标准 C89、 C90以及后续出现 C99、C11标准。 1.C语言的应用领域 世界上编程语言有几百种,其中 C语言是一门通用的、模块化、程序化、高效性和可移植性的编程语言,不仅适合开发操作系统而且适合开发应用软件。例如, Linux、Windows、 macOS、Unix、Vxworks等操作系统的内核都用 C语言编写,一些应用软件如 WPS、Photoshop、 Media Player也用 C语言开发。伴随着嵌入和实时系统的兴起,人工智能(AI)、机器人、自动驾驶、智能电器等用到的芯片驱动以及应用程序绝大部分是用 C语言实现的。利用 C语言可以开发很多游戏,比如推箱子、贪吃蛇等。 C语言的应用领域如图1-2所示。 学会 C语言可以做到以一法通万法,这是它经久不衰的主要原因。 常春藤式的 C语言近 40年来一直位居 TIOBE排行榜前列,表1-1给出了 1986~2021年计算机编程语言 TIOBE排名前 10的语言。 图灵奖是计算机领域的国际*高奖项,被誉为“计算机界的诺贝尔奖”。 1983年, Unix设计者 Kenneth L. Thompson与 C语言开发者 Dennis M. Ritchie成为第十八届图灵奖共同获得者。 图1-2 C语言的应用领域 表1-1 计算机编程语言 TIOBE排名(1986~2021年) 2.C语言的特点 C语言按模块化方式组织程序,结构层次清晰,运行效率高,易于调试和维护。 C语言主要有 6方面的优点: (1)C语言集低级语言和高级语言特点于一体。 C语言具有低级语言的特点:可以直接对计算机硬件进行操作,允许直接访问内存的物理地址,进行位(bit)一级的操作。例如,数组 int arr[5],经过编译以后变成了(基地址+偏移量)的方式。对于计算机来说,没有比加法更快的运算,没有任何一种方法比(基地址+偏移量)的存取法更快。 C语言具有高级语言的特点:程序的编写符合人们的思维习惯,书写形式自由,一行可以写一条或多条语句。 (2)C语言允许在编译之前使用预处理命令,提高编程效率。 C语句简练、紧凑,使用方便、灵活。 (3)C语言具有固定的关键字和灵活定义的标识符,以及丰富的运算符和数据类型。 C语言定义标识符时严格区分大小写字母,例如, pi 与 PI 是 2个不同的标识符;具有 32个关键字,如: int、char、float、for、do、case、switch 等;有 34种运算符,如:算术、赋值、逻辑、关系、强制类型转换等;有多种数据类型,如:整型、实型、字符型、数组、指针、结构体、共用体等,尤其是指针类型数据,使用十分灵活和多样化;还有 9种控制语句,如: if-else,switch()、while()、do-while()、for()、continue、break、goto(不提倡使用)、return。 (4)C语言是一种典型的结构化程序设计语言。 C语言具有三种基本结构:顺序结构、选择结构(分支结构)、循环结构(重复结构)。 (5)C语言是一种模块化程序设计语言。 C语言程序由一系列函数构成,由函数实现模块功能,模块间通过函数调用实现数据通信。 (6)C语言可移植性好,生成的目标代码质量高。由于 C语言本身不依赖于机器硬件,因此可以被广泛地移植到各种类型的计算机上。 C语言也有缺点,例如, C语言因其程序设计自由的特点,同时也意味着容错性差,出现的错误往往难以察觉,数组下标越界不报错,不检查常识性、逻辑性错误,操作硬件出错有时不报错,可能会造成难以预测的后果。 1.1.3 C程序基本结构 一个完整的 C程序有且仅有一个主函数 main()和若干个函数,特殊情况仅由一个 main()函数构成。 【例 1-1】用 C语言编程计算矩形的面积。 程序代码如下: // 计算矩形的面积 #include void main() { int length, width, area; length=7; width=3; area= length * width; printf("length=7, width=3\n" ); printf("area=%d\n",area); } 解析:此程序仅由主函数 main()构成,使用了编译预处理命令 #include。 #include命令一般放在程序的开头。 C语言提供两类函数:自定义函数和库函数,其中,用户在 C程序中自行编写的函数,称为自定义函数;以库的形式存放在系统中的,称为库函数。使用库函数时,要用编译预处理命令 #include将有关的“头文件”包含到用户源文件中,例如,使用标准输入 scanf()、输出 printf()库函数时,要用到 stdio.h头文件,该文件后缀中的 h是 head的缩写。 stdio是 standard input & output的缩写,它是以标准的输入输出设备作为输入输出对象。所有 C标准库头文件都应该位于编译器安装目录的“include”子目录下。 主函数 main()是程序的入口处,不论把 main()写在程序的开头、中间还是*后位置,一个 C程序总是从 main()开始执行,并在 main()结束时而结束。 主函数 main()的书写形式有以下几种: main() void main() int main(void) “main()”中括号 ()内可以不带任何参数,也可以用关键字 void明确表示不带参数。 若 main()之前的指定关键字为 void,表示主函数不给操作系统返回任何信息;若指定关键字为 int,则表示主函数返回一个整数值给操作系统,且程序的*后一行必须是语句 “return 0;”。 【读一读】C语言中的自定义函数与注释语句 用户自定义的函数通常由函数说明部分和函数体两部分组成。函数说明部分:包括函数名、函数类型、函数形式参数(形参)名、形参的类型。函数体:指函数说明部分下面的花括号 { }里的内容。如果一个函数内有多层花括号,则*外层的一对 { }为函数体的范围。函数体一般包括: ◆变量定义。如例 1-1中 main()函数体中的“ int length, width, area;”。 ◆执行部分。由若干个语句组成。 为提高 C程序的可读性,对程序中的组成部分进行解释,称为注释。注释仅用来向用户提示或解释程序的意义。 C语言的注释符有 //和 /* */ 两种格式,通常用 //格式表示注释语句单独成为一行,用 /* */ 格式表示在一行语句的*右侧添加注释。 注释可出现在程序中的任何位置,通常出现在源程序的开头、函数的开头或程序的中间。程序编译时,不对注释作任何处理,所以可以用汉字或中英文字符表示。初学者要养成在程序适当的地方加注释的良好编程习惯。在调试程序中对暂不使用的语句也可用注释符括起来,使编译跳过不作处理,待调试结束后再去掉注释符。 【例1-2】编写程序,计算从键盘上输入的两个整数之和,要求调用自定义函数。程序代码如下: #include int main() { int add(int num1,int num2); /*声明被调用函数add()*/ int x,y,sum=0; /*定义变量x,y,sum为整型, 并为sum赋初值0*/ printf("请输入整数x与y的值:"); scanf ("%d%d",&x,&y); /*从键盘上输入变量x、y的值*/ sum=add(x,y); /*调用函数add(),将返回值赋给sum*/ printf("x+y=%d\n",sum); /*输出x、y之和sum的值*/ return 0; } //计算两整数之和的函数 int add(int num1,int num2) /*定义函数add(),形式参数num1, num2为整型 */

商品评论(0条)
暂无评论……
书友推荐
本类畅销
编辑推荐
返回顶部
中图网
在线客服