人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
微信扫描二维码,访问我们的微信店铺
你可以使用微信联系我们,随时随地的购物、客服咨询、查询订单和物流...

C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍

74.90
运费: ¥ 0.00-20.00
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品图0
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品图1
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品图2
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品图3
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品图4
C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品缩略图0 C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品缩略图1 C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品缩略图2 C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品缩略图3 C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍 商品缩略图4

商品详情

书名:C语言程序设计(第4版 修订版)
定价:99.8
ISBN:9787115637406
作者:史蒂芬·G.寇肯
版次:1
出版时间:2025-01

内容提要:

本书通过程序示例讲解C语言的众多概念、函数和编程方法,帮助初学者更好地掌握C语言编程的内容。

本书从C语言的基础概念和编译过程出发,详细讲解C语言的数据类型、算术表达式、循环语句、判断语句、数组、函数、结构体、字符串、指针、位运算、预处理器、输入输出操作等,以及goto语句、联合体、逗号运算符、限定符、命令行参数、动态内存分配、程序调试、面向对象程序设计等*特性。此外,本书提供了大量练习题,帮助读者巩固实践;并通过附录提供C语言概要、标准C语言库、使用GCC编译程序、常见的编程错误、C语言编译器和集成开发环境等内容。

本书适合想要*基础入门C语言编程的读者,也适合用作计算机等相关专业C语言课程的教学参考书。






作者简介:

史蒂芬·G. 寇肯(Stephen G. Kochan)具有30多年的C语言开发经验。他曾是AT&T贝尔实验室的软件顾问,在那里进行过UNIX和C语言程序的开发和授课。他撰写了多本关于编程和UNIX的*图书,包括《Objective-C程序设计(第6版)》和《UNIX/Linux/OS X中的Shell编程(第4版)》等。



目录:

第 1章  一些基础概念1

1.1  程序设计 1

1.2  *语言 1

1.3  操作系统 2

1.4  编译程序 2

1.5  集成开发环境 4

1.6  语言解释器 5

第 2章  编译并运行你的第 一个程序 6

2.1  编译你的程序 6

2.2  运行你的程序 7

2.3  理解你的第 一个程序 7

2.4  显示变量的值 9

2.5  注释 11

2.6  练习题 12

第3章  变量、数据类型和算术表达式 14

3.1  理解数据类型和常量 14

3.1.1  整数类型int 14

3.1.2  浮点数类型float 15

3.1.3  扩展精度类型double 16

3.1.4  单字符类型char 16

3.1.5  布尔数据类型_Bool 16

3.1.6  类型说明符:long、long long、short、unsigned和signed 18

3.2  使用变量 20

3.3  使用算术表达式 21

3.4  运算与赋值结合:赋值运算符 27

3.5  _Complex和_Imaginary类型 28

3.6  练习题 28

第4章  程序循环 30

4.1  三角数 30

4.2  for语句 31

4.2.1  关系运算符 32

4.2.2  输出对齐 35

4.3  程序输入 36

4.3.1  嵌套的for循环 37

4.3.2  for循环的变体 39

4.4  while语句 40

4.5  do语句 43

4.5.1  break语句 44

4.5.2  continue语句 44

4.6  练习题 45

第5章  做出决策 47

5.1  if语句 47

5.1.1  if-else结构 50

5.1.2  复合关系测试 52

5.1.3  嵌套if语句 54

5.1.4  else if结构 55

5.2  switch语句 61

5.3  布尔变量 63

5.4  条件运算符 66

5.5  练习题 68

第6章  使用数组 70

6.1  定义一个数组 70

6.1.1  使用数组元素作为计数器 73

6.1.2  生成斐波那契数 75

6.1.3  使用数组生成素数 76

6.2  初始化数组 78

6.3  字符数组 79

6.3.1  使用数组的基数变换 80

6.3.2  const限定符 82

6.4  多维数组 83

6.5  变长数组 85

6.6  练习题 86

第7章  使用函数 88

7.1  定义一个函数 88

7.2  参数和局部变量 91

7.2.1  函数原型声明 91

7.2.2  自动局部变量 92

7.3  返回函数结果 93

7.4  函数调用 97

7.4.1  声明返回类型和参数类型 99

7.4.2  检查函数参数 100

7.5  自顶向下编程技术 101

7.6  函数与数组 102

7.6.1  赋值运算符 105

7.6.2  数组排序 106

7.6.3  多维数组 108

7.7  全局变量 112

7.8  自动变量与静态变量 115

7.9  递归函数 117

7.10  练习题 119

第8章  使用结构体 121

8.1  结构体的基础知识 121

8.2  用于存储日期的结构体 121

8.3  函数与结构体 125

8.4  初始化结构体 132

8.5  结构体数组 133

8.6  包含结构体的结构体 136

8.7  包含数组的结构体 138

8.8  结构体变体 140

8.9  练习题 141

第9章  字符串 143

9.1  复习字符串的基础知识 143

9.2  字符数组 143

9.3  变长字符串 145

9.3.1  字符串的初始化与显示 147

9.3.2  判断两个字符串是否相等 149

9.3.3  输入字符串 150

9.3.4  输入单个字符 152

9.3.5  空字符串 156

9.4  转义字符 158

9.5  关于字符串常量的更多内容 160

9.6  字符串、结构体和数组 161

9.7  字符操作 167

9.8  练习题 169

第 10章  指针 172

10.1  指针和间接性 172

10.2  定义一个指针变量 172

10.3  在表达式中使用指针 175

10.4  使用指针和数据结构 176

10.4.1  包含指针的结构体 178

10.4.2  链表 179

10.5  关键字const和指针 185

10.6  指针和函数 186

10.7  指针和数组 191

10.7.1  稍许离题:程序优化 194

10.7.2  是数组还是指针? 194

10.7.3  指向字符串的指针 195

10.7.4  字符串常量和指针 196

10.7.5  回顾递增和递减运算符 198

10.8  指针操作 200

10.9  指向函数的指针 201

10.10  指针和内存地址 202

10.11  练习题 203

第 11章  位运算 205

11.1  位的基础知识 205

11.2  位运算符 206

11.2.1  按位与运算符 206

11.2.2  按位或运算符 208

11.2.3  按位异或运算符 209

11.2.4  二进制求补运算符 209

11.2.5  左移运算符 211

11.2.6  右移运算符 211

11.2.7  移位函数 212

11.2.8  循环移位 213

11.3  位域 215

11.4  练习题 218

第 12章  预处理器 220

12.1  #define语句 220

12.1.1  程序的可扩展性 223

12.1.2  程序的可移植性 224

12.1.3  更*的定义类型 225

12.1.4  #运算符 229

12.1.5  ##运算符 230

12.2  #include语句 231

12.3  条件编译 233

12.3.1  #ifdef、#endif、#else和#ifndef语句 233

12.3.2  #if和#elif预处理器语句 234

12.3.3  #undef语句 235

12.4  练习题 236

第 13章  用枚举数据类型、类型定义及数据类型转换以扩展数据类型 237

13.1  枚举数据类型 237

13.2  typedef语句 240

13.3  数据类型转换 242

13.3.1  符号扩展 243

13.3.2  参数转换 243

13.4  练习题 244

第 14章  处理大型程序 245

14.1  将你的程序分为多个文件 245

14.2  模块之间的通信 247

14.2.1  外部变量 247

14.2.2  静态、外部变量和函数的对比 249

14.2.3  有效地使用头文件 251

14.3  其他处理大型程序的工具 252

14.3.1  make工具 252

14.3.2  CVS工具 254

14.3.3  UNIX工具:ar、grep、sed等命令 254

第 15章  C语言中的输入与输出操作 255

15.1  字符I/O:getchar()与putchar() 255

15.2  格式化I/O:printf()与scanf() 255

15.2.1  printf()函数 256

15.2.2  scanf()函数 261

15.3  文件的输入和输出操作 264

15.3.1  将I/O重定向到文件 264

15.3.2  文件末尾 266

15.4  处理文件的特殊函数 267

15.4.1  fopen()函数 267

15.4.2  getc()和putc()函数 268

15.4.3  fclose()函数 269

15.4.4  feof()函数 270

15.4.5  fprintf()和fscanf()函数 271

15.4.6  fgets()和fputs()函数 271

15.4.7  stdin、stdout和stderr 272

15.4.8  exit()函数 272

15.4.9  重命名和删除文件 273

15.5  练习题 273

第 16章  其他内容及*特性 275

16.1  其他语言语句 275

16.1.1  goto语句 275

16.1.2  空语句 275

16.2  使用联合体 276

16.3  逗号运算符 279

16.4  类型限定符 279

16.4.1  register限定符 279

16.4.2  volatile限定符 280

16.4.3  restrict限定符 280

16.5  命令行参数 280

16.6  动态内存分配 283

16.6.1  calloc()和malloc()函数 284

16.6.2  sizeof运算符 284

16.6.3  free()函数 286

16.7  练习题 287

第 17章  调试程序 288

17.1  使用预处理器调试 288

17.2  用GDB调试程序 293

17.2.1  处理变量 295

17.2.2  显示源文件 296

17.2.3  控制程序的执行 296

17.2.4  获得堆栈信息 300

17.2.5  调用函数以及设置数组和结构体 301

17.2.6  使用GDB命令获取帮助信息 301

17.2.7  其他 303

第 18章  面向对象程序设计 305

18.1  到底什么是对象? 305

18.2  实例和方法 306

18.3  编写一个处理分数的C语言程序 307

18.4  定义一个Objective-C类来处理分数 307

18.5  定义一个C++类来处理分数 311

18.6  定义一个C#类来处理分数 313

附录A  C语言概要 316

A.1  双字符序列与标识符 316

A.1.1  双字符序列 316

A.1.2  标识符 316

A.2  注释 317

A.3  常量 317

A.3.1  整型常量 317

A.3.2  浮点型常量 318

A.3.3  字符型常量 318

A.3.4  字符串常量 319

A.3.5  枚举常量 319

A.4  数据类型和声明 320

A.4.1  声明 320

A.4.2  基本数据类型 320

A.4.3  派生数据类型 321

A.4.4  枚举数据类型 326

A.4.5  typedef语句 326

A.4.6  类型限定符const、volatile和restrict 327

A.5  表达式 327

A.5.1  C语言运算符总结 328

A.5.2  常量表达式 329

A.5.3  算术运算符 330

A.5.4  逻辑运算符 330

A.5.5  关系运算符 331

A.5.6  位运算符 331

A.5.7  递增和递减运算符 331

A.5.8  赋值运算符 332

A.5.9  条件运算符 332

A.5.10  类型转换运算符 332

A.5.11  sizeof运算符 332

A.5.12  逗号运算符 333

A.5.13  数组的基本操作 333

A.5.14  结构体的基本操作 333

A.5.15  指针的基本操作 334

A.5.16  复合字面量 335

A.5.17  基本数据类型的转换 335

A.6  存储类和作用域 336

A.6.1  函数 336

A.6.2  变量 336

A.7  函数 337

A.7.1  函数定义 337

A.7.2  函数调用 338

A.7.3  函数指针 338

A.8  语句 339

A.8.1  复合语句 339

A.8.2  break语句 339

A.8.3  continue语句 339

A.8.4  do语句 339

A.8.5  for语句 339

A.8.6  goto语句 340

A.8.7  if语句 340

A.8.8  空语句 341

A.8.9  return语句 341

A.8.10  switch语句 341

A.8.11  while语句 342

A.9  预处理器 342

A.9.1  三字符组 342

A.9.2  预处理器指令 343

A.9.3  预定义标识符 346

附录B  标准C语言库 347

B.1  标准头文件 347

B.1.1  <stddef.h> 347

B.1.2  <limits.h> 347

B.1.3  <stdbool.h> 348

B.1.4  <float.h> 348

B.1.5  <stdint.h> 349

B.2  字符串函数 349

B.3  内存函数 351

B.4  字符函数 352

B.5  I/O函数 353

B.6  内存中的格式转换函数 357

B.7  字符串转换为数字 358

B.8  动态内存分配函数 359

B.9  数学函数 360

B.10  通用函数 368

附录C  使用GCC编译程序 371

C.1  通用命令格式 371

C.2  命令行选项 371

附录D  常见的程序错误 373

附录E  参考资源 377

E.1  C语言 377

E.1.1  图书 377

E.1.2  网站 377

E.1.3  网络论坛 377

E.2  C语言编译器和集成开发环境 377

E.2.1  GCC 378

E.2.2  MinGW 378

E.2.3  Cygwin 378

E.2.4  Visual Studio 378

E.2.5  CodeWarrior 378

E.2.6  Code::Blocks378



人民邮电出版社有限公司店铺主页二维码
人民邮电出版社有限公司 微信公众号认证
人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
扫描二维码,访问我们的微信店铺
随时随地的购物、客服咨询、查询订单和物流...

C语言程序设计(第4版 修订版) C语言从入门到精通软件开发计算机编程语言程序设计书籍

手机启动微信
扫一扫购买

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏

微信支付

支付宝

扫一扫购买

打开微信,扫一扫

或搜索微信号:renyoushe
人民邮电出版社官方微信公众号

收藏到微信 or 发给朋友

1. 打开微信,扫一扫左侧二维码

2. 点击右上角图标

点击右上角分享图标

3. 发送给朋友、分享到朋友圈、收藏

发送给朋友、分享到朋友圈、收藏