C语言程序设计

C语言程序设计 pdf epub mobi txt 电子书 下载 2026

出版者:
作者:
出品人:
页数:0
译者:
出版时间:
价格:34.00
装帧:
isbn号码:9787309070736
丛书系列:
图书标签:
  • C语言
  • 程序设计
  • 编程入门
  • 计算机科学
  • 教材
  • 算法
  • 数据结构
  • 基础教程
  • 经典教材
  • 理工科
想要找书就要到 小哈图书下载中心
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

C语言是在当今软件开发领域有着十分广泛应用的一种语言。本书全面地介绍了C语言的基本概念、各种语法成分及应用,并通过大量实例程序讲述了C语言应用中的重点和难点,引导读者掌握一般程序设计的方法。

全书选材先进,内容丰富,讲述力求理论联系实际,深入浅出、循序渐进,注重培养读者的程序设计能力以及良好的程序设计风格和习惯。

本书可作为本科院校计算机程序设计的教学用书,也可作为从事计算机应用的科技人员的参考书及培训教材。

为了配合本书的学习,作者还编写了与本书配套的《C语言程序设计上机指导与习题选解》,可供读者学习时参考使用。

《C语言程序设计》 本书是一本面向广大计算机科学爱好者和初学者的C语言入门教程。它系统地介绍了C语言的核心概念、语法规则以及常用的编程技巧,旨在帮助读者打下坚实的编程基础,并逐步掌握独立编写C语言程序的能力。 内容概述: 本书从最基础的C语言入门知识讲起,循序渐进,层层深入。 基础入门: 我们将首先介绍计算机程序设计的概念,让您了解编程是什么,以及C语言在计算机科学中的地位。随后,您将学习如何设置和使用C语言开发环境,包括编译器的安装和使用。接着,我们将深入探讨C语言最基本的数据类型,如整型、浮点型、字符型等,并介绍变量的声明、初始化和使用。关键字、运算符(算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、条件运算符等)以及表达式的求值顺序和优先级也将被详细讲解。 流程控制: 为了能够让程序按照预期的逻辑执行,本书将重点介绍C语言的流程控制语句。这包括顺序结构、选择结构(`if`、`else if`、`else`、`switch`语句)和循环结构(`while`、`do-while`、`for`语句)。您将学习如何使用这些结构来控制程序的执行流程,实现分支判断和重复执行。 函数与模块化编程: 随着程序复杂度的增加,模块化编程变得至关重要。本书将引导您学习如何定义和调用函数,理解函数的参数传递(传值和传址)、返回值以及函数声明和定义。我们将介绍C语言的标准库函数,例如输入/输出函数(`printf`、`scanf`)、数学函数以及字符串处理函数。学习如何合理地组织函数,提高代码的可读性和可重用性是本章的核心。 数组与字符串: 数组是存储同类型数据集合的重要工具。本书将详细讲解数组的定义、初始化、访问以及多维数组的概念。您将学习如何利用数组来存储和处理大量数据。同时,字符串作为一种特殊的字符数组,其在C语言中的表示、常用操作(如字符串的输入输出、复制、连接、比较)也将被一一介绍。 指针: 指针是C语言中最强大但也最容易让人困惑的概念之一。本书将用清晰易懂的方式解释指针的本质,包括指针变量的声明、赋值、解引用以及指针的算术运算。您将学习指针在函数参数传递(特别是传址调用)、数组操作、动态内存分配等方面的广泛应用。掌握指针是深入理解C语言的关键。 结构体与共用体: 当我们需要处理不同类型的数据项时,结构体和共用体就显得尤为重要。本书将介绍如何定义结构体类型,创建结构体变量,以及如何访问结构体的成员。您将学习如何使用指向结构体的指针,以及结构体在构建复杂数据结构中的作用。共用体作为一种特殊的存储结构,也将被介绍其特性和应用场景。 文件操作: 许多实际应用都需要与文件进行交互。本书将教授您如何进行文件的打开、关闭、读写操作,包括文本文件和二进制文件的处理。您将学习使用标准库提供的文件I/O函数,例如`fopen`、`fclose`、`fprintf`、`fscanf`、`fread`、`fwrite`等,从而实现数据的持久化存储和读取。 预处理器指令: C语言拥有强大的预处理器,它在编译之前对源代码进行处理。本书将介绍常用的预处理器指令,如宏定义(`define`)、文件包含(`include`)、条件编译(`ifdef`、`ifndef`、`if`、`else`、`endif`)等。了解这些指令有助于您编写更灵活、更高效的代码。 学习特点: 循序渐进的教学方法: 本书内容组织严谨,从基础概念到高级主题,逐步深入,确保学习过程的连贯性。 丰富的实例和练习: 每一章节都配有大量精心设计的编程实例,涵盖了各种常见的编程问题。同时,每章末尾提供了一系列具有挑战性的练习题,帮助读者巩固所学知识,提升实际编程能力。 注重实际应用: 本书不仅讲解语法,更注重培养读者解决实际问题的能力,通过实例展示C语言在不同领域的应用。 清晰易懂的语言: 语言简洁明了,避免使用过于晦涩的术语,力求让初学者也能轻松理解。 无论您是想为未来的学习打下坚实的计算机科学基础,还是希望掌握一门强大实用的编程语言,亦或是对底层编程原理充满好奇,《C语言程序设计》都将是您理想的起点。通过本书的学习,您将逐步领略编程的魅力,并能够运用C语言创造属于自己的程序。

作者简介

孟爱国,男,在长沙理工大学任教,从事《大学计算机基础》、《C语言程序设计》和《Visual Basic程序设计》等系列课程教学。

目录信息

第1章 C语言概述1
1.1 C语言的历史1
1.1.1 起源1
1.1.2 标准化1
1.1.3 基于C的语言2
1.2 C语言的优缺点3
1.2.1 C语言的优点3
1.2.2 C语言的缺点3
1.2.3 高效地使用C语言4
问与答5
第2章 C语言基本概念7
2.1 编写一个简单的C程序7
程序显示双关语7
2.1.1 编译和链接8
2.1.2 集成开发环境8
2.2 简单程序的一般形式9
2.2.1 指令9
2.2.2 函数9
2.2.3 语句10
2.2.4 显示字符串10
2.3 注释11
2.4 变量和赋值12
2.4.1 类型12
2.4.2 声明13
2.4.3 赋值13
2.4.4 显示变量的值14
程序计算箱子的空间重量14
2.4.5 初始化15
2.4.6 显示表达式的值16
2.5 读入输入16
程序计算箱子的空间重量(改进版)16
2.6 定义常量的名字17
程序华氏温度转换为摄氏温度17
2.7 标识符18
2.8 C程序的书写规范19
问与答21
练习题23
编程题24
第3章 格式化输入/输出26
3.1 printf函数26
3.1.1 转换说明27
程序用printf函数格式化数28
3.1.2 转义序列28
3.2 scanf函数29
3.2.1 scanf函数的工作方法30
3.2.2 格式串中的普通字符31
3.2.3 易混淆的printf函数和scanf函数32
程序分数相加32
问与答33
练习题34
编程题35
第4章 表达式36
4.1 算术运算符36
程序计算通用产品代码的校验位38
4.2 赋值运算符39
4.2.1 简单赋值40
4.2.2 左值41
4.2.3 复合赋值41
4.3 自增运算符和自减运算符42
4.4 表达式求值43
4.5 表达式语句45
问与答45
练习题47
编程题49
第5章 选择语句50
5.1 逻辑表达式50
5.1.1 关系运算符50
5.1.2 判等运算符51
5.1.3 逻辑运算符51
5.2 if语句52
5.2.1 复合语句53
5.2.2 else子句53
5.2.3 级联式if语句54
程序计算股票经纪人的佣金55
5.2.4 “悬空else”的问题56
5.2.5 条件表达式57
5.2.6 C89中的布尔值58
5.2.7 C99中的布尔值58
5.3 switch语句59
程序显示法定格式的日期61
问与答62
练习题65
编程题67
第6章 循环69
6.1 while语句69
程序显示平方表71
程序数列求和71
6.2 do语句72
程序计算整数的位数73
6.3 for语句73
6.3.1 for语句的惯用法74
6.3.2 在for语句中省略表达式75
6.3.3 C99中的for语句75
6.3.4 逗号运算符76
程序显示平方表(改进版)77
6.4 退出循环78
6.4.1 break语句78
6.4.2 continue语句78
6.4.3 goto语句79
程序账簿结算80
6.5 空语句81
问与答83
练习题84
编程题85
第7章 基本类型88
7.1 整数类型88
7.1.1 C99中的整数类型90
7.1.2 整数常量90
7.1.3 C99中的整数常量91
7.1.4 整数溢出91
7.1.5 读/写整数91
程序数列求和(改进版)92
7.2 浮点类型93
7.2.1 浮点常量94
7.2.2 读/写浮点数94
7.3 字符类型94
7.3.1 字符操作95
7.3.2 有符号字符和无符号字符95
7.3.3 算术类型96
7.3.4 转义序列96
7.3.5 字符处理函数97
7.3.6 用scanf和printf读/写字符98
7.3.7 用getchar和putchar读/写字符98
程序确定消息的长度99
7.4 类型转换100
7.4.1 常用算术转换101
7.4.2 赋值过程中的转换102
7.4.3 C99中的隐式转换103
7.4.4 强制类型转换103
7.5 类型定义105
7.5.1 类型定义的优点105
7.5.2 类型定义和可移植性105
7.6 sizeof运算符106
问与答107
练习题109
编程题110
第8章 数组113
8.1 一维数组113
8.1.1 数组下标113
程序数列反向115
8.1.2 数组初始化115
8.1.3 指定初始化式116
程序检查数中重复出现的数字116
8.1.4 对数组使用sizeof运算符117
程序计算利息118
8.2 多维数组119
8.2.1 多维数组初始化120
8.2.2 常量数组121
程序发牌121
8.3 C99中的变长数组122
问与答123
练习题124
编程题125
第9章 函数129
9.1 函数的定义和调用129
程序计算平均值129
程序显示倒计数130
程序显示双关语(改进版)131
9.1.1 函数定义132
9.1.2 函数调用133
程序判定素数134
9.2 函数声明135
9.3 实际参数136
9.3.1 实际参数的转换137
9.3.2 数组型实际参数138
9.3.3 变长数组形式参数140
9.3.4 在数组参数声明中使用static141
9.3.5 复合字面量141
9.4 return语句142
9.5 程序终止143
9.6 递归144
程序快速排序146
问与答147
练习题150
编程题153
第10章 程序结构155
10.1 局部变量155
10.1.1 静态局部变量156
10.1.2 形式参数156
10.2 外部变量156
10.2.1 示例:用外部变量实现栈156
10.2.2 外部变量的利与弊157
程序猜数158
10.3 程序块161
10.4 作用域162
10.5 构建C程序163
程序给一手牌分类163
问与答169
练习题169
编程题170
第11章 指针172
11.1 指针变量172
11.2 取地址运算符和间接寻址运算符173
11.2.1 取地址运算符173
11.2.2 间接寻址运算符174
11.3 指针赋值174
11.4 指针作为参数176
程序找出数组中的最大元素和最小元素177
11.5 指针作为返回值179
问与答180
练习题181
编程题182
第12章 指针和数组184
12.1 指针的算术运算184
12.1.1 指针加上整数185
12.1.2 指针减去整数185
12.1.3 两个指针相减186
12.1.4 指针比较186
12.1.5 指向复合常量的指针186
12.2 指针用于数组处理186
12.3 用数组名作为指针188程序数列反向(改进版)189
12.3.1 数组型实际参数(改进版)189
12.3.2 用指针作为数组名191
12.4 指针和多维数组191
12.4.1 处理多维数组的元素191
12.4.2 处理多维数组的行192
12.4.3 处理多维数组的列192
12.4.4 用多维数组名作为指针192
12.5 C99中的指针和变长数组193
问与答194
练习题195
编程题197
第13章 字符串198
13.1 字符串字面量198
13.1.1 字符串字面量中的转义序列198
13.1.2 延续字符串字面量199
13.1.3 如何存储字符串字面量199
13.1.4 字符串字面量的操作200
13.1.5 字符串字面量与字符常量200
13.2 字符串变量200
13.2.1 初始化字符串变量201
13.2.2 字符数组与字符指针202
13.3 字符串的读和写203
13.3.1 用printf函数和puts函数写字符串203
13.3.2 用scanf函数和gets函数读字符串203
13.3.3 逐个字符读字符串204
13.4 访问字符串中的字符205
13.5 使用C语言的字符串库206
13.5.1 strcpy函数207
13.5.2 strlen函数208
13.5.3 strcat函数208
13.5.4 strcmp函数209程序显示一个月的提醒列表209
13.6 字符串惯用法211
13.6.1 搜索字符串的结尾211
13.6.2 复制字符串213
13.7 字符串数组214
程序核对行星的名字217
问与答218
练习题220
编程题222
第14章 预处理器225
14.1 预处理器的工作原理225
14.2 预处理指令227
14.3 宏定义227
14.3.1 简单的宏227
14.3.2 带参数的宏229
14.3.3 #运算符231
14.3.4 ##运算符231
14.3.5 宏的通用属性232
14.3.6 宏定义中的圆括号233
14.3.7 创建较长的宏233
14.3.8 预定义宏234
14.3.9 C99中新增的预定义宏235
14.3.10 空的宏参数236
14.3.11 参数个数可变的宏236
14.3.12 __func__标识符237
14.4 条件编译237
14.4.1 #if指令和#endif指令238
14.4.2 defined运算符238
14.4.3 #ifdef指令和#ifndef指令239
14.4.4 #elif指令和#else指令239
14.4.5 使用条件编译240
14.5 其他指令240
14.5.1 #error指令240
14.5.2 #line指令241
14.5.3 #pragma指令242
14.5.4 _Pragma运算符242
问与答243
练习题245
第15章 编写大型程序248
15.1 源文件248
15.2 头文件249
15.2.1 #include指令249
15.2.2 共享宏定义和类型定义250
15.2.3 共享函数原型251
15.2.4 共享变量声明252
15.2.5 嵌套包含253
15.2.6 保护头文件253
15.2.7 头文件中的#error指令254
15.3 把程序划分成多个文件254程序文本格式化255
15.4 构建多文件程序260
15.4.1 makefile260
15.4.2 链接期间的错误262
15.4.3 重新构建程序262
15.4.4 在程序外定义宏264
问与答264
练习题265
编程题266
第16章 结构、联合和枚举267
16.1 结构变量267
16.1.1 结构变量的声明267
16.1.2 结构变量的初始化269
16.1.3 指定初始化269
16.1.4 对结构的操作270
16.2 结构类型270
16.2.1 结构标记的声明271
16.2.2 结构类型的定义272
16.2.3 结构作为参数和返回值272
16.2.4 复合字面量273
16.3 嵌套的数组和结构274
16.3.1 嵌套的结构274
16.3.2 结构数组274
16.3.3 结构数组的初始化275程序维护零件数据库275
16.4 联合281
16.4.1 用联合来节省空间282
16.4.2 用联合来构造混合的数据结构284
16.4.3 为联合添加“标记字段”284
16.5 枚举285
16.5.1 枚举标记和类型名286
16.5.2 枚举作为整数286
16.5.3 用枚举声明“标记字段”286
问与答287
练习题289
编程题293
第17章 指针的高级应用294
17.1 动态存储分配294
17.1.1 内存分配函数294
17.1.2 空指针295
17.2 动态分配字符串296
……
第18章 声明 327
第19章 程序设计 345
第20章 底层程序设计 363
第21章 标准库 377
第22章 输入/输出 384
第23章 库对数值和字符数据的支持 419
第24章 错误处理 446
第25章 国际化特性 456
第26章 其他库函数 482
第27章 C99对数学计算的新增支持 503
附录A C语言运算符 524
附录B C99与C89的比较 525
附录C C89与经典C的比较 529
附录D 标准库函数 532
附录E ASCII字符集 569
参考文献 570
索引 573
· · · · · · (收起)

读后感

评分

评分

评分

评分

评分

用户评价

评分

评分

评分

评分

评分

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 qciss.net All Rights Reserved. 小哈图书下载中心 版权所有