学习 跟“龙哥”学C语言编程 [李志龙].pdf

Posted on 2025-10-29 12:34  锦喵卫指挥使  阅读(0)  评论(1)    收藏  举报

12:31 2025/10/29
越来越多的高校在录取研究生时开始采用上机考试的形式来考查学生的动手编程能力,很多知名互联
网公司在校招时也采用在线笔试的形式,然而,在以应试为主的大学教学模式下,动手能力往往是学生的
薄弱环节。为此,本书以 C 语言为工具,由浅入深、由易到难地讲解了 C 语言,深入解析了程序执行的原
理及数据结构和算法,为读者后续学习 Linux 系统编程和 C++语言编程打下坚实的基础;同时,书中精选
了各大知名互联网公司的校招面试题和社招面试题,以及部分知名高校考研的机试真题,可为读者提供可
靠、实际的练习指导。全书强调程序的编写与调试,内容精练,可操作性强。每章均提供教学视频、实例
代码和课后习题代码,读者可按书中的建议下载并练习。
本书不仅可以作为读者提升 C 语言编程能力的图书,而且可以作为研究生初试的复习用书,还可作为
C 语言初学者的参考用书。

C 编程/Linux 系统编程/C++编程,是王道训练营培训后端开发工程师的一套完整教学体系

毕竟,练习才是掌握一门语言的必杀技!

。读者可能会担心自己的学习能力不强。不必担心,本书附有王道训练营的 C
语言培训视频(加入 QQ 群 339198307 即可获取视频地址,而且视频会不断更新,力求更加完美)。
这些视频与本书完美契合,王道训练营也以本书为教材进行讲解,而且会根据每期“道友”的反
馈更新书籍和视频。无论读者是否是计算机专业的学生,都可以使用本书学习并掌握 C 语言。

信心十足。很多读者在学习 C 语言编程的过程中,遇到各种各样的问题而解决不了时,
会认为自己很笨或变得烦躁,要么觉得自己参考的书籍或视频很烂,要么觉得 C 语言很难而放弃
学习。

,以便为
跨专业读者降低直接学习数据结构或算法导论等书籍的难度,也为准备“刷题”(PAT,剑指 Offer、
LeetCode 等)的小伙伴打下坚实的基础,让“刷题”事半功倍!

第 1 章 开发环境搭建及调试窗口设置 1
学习目标
 开发环境的搭建与使用
 新建项目及编译运行
 基本的调试方法
 学习 C 语言需要达到的目标和境界

编译器支持的语言特性

C 程序则可以在任意架构的处理器上使用,只要这种架构的处理器具有对应的 C 语言编译器和库,将 C 源代码编译、链接成目标二进制文件后即可运行。

原因是微软公司的 masm
编译器是 C 与 C++混合的编译器,但我们在新建代码文件时要将后缀命名为“.c”,例如这里以main.c 命名,masm 编译时会按照 C 规则进行编译。

这里的 system函数是 C 语言调用其他语言的一个接口, system("pause") 使我们通过 C 语言调用执行了Windows 的批处理命令 pause

其中按钮 1 是“单步执行”按钮,其快捷键是 F10,单击该按钮一次,程序会向下执行一步;按钮 2 是“继续执行”按钮,单击后程序会执行到最后,或执行到下一个断点;按钮 3 是“停止执行”按钮,单击后程序直接停止运行(左键单击断点可以取消断点)。

“监视”“调用堆栈”“内存”窗口对于后面我
们调试程序及理解程序执行的原理至关重要

内存的变化过程就像衣柜的变化过程,我们通过内存来存储数据,就像
通过衣柜来存储衣服。数据存储要有规律,以便我们高效取出;衣服存放要有次序,否则可能会
花很长时间找想要的那件衣服。当然,程序员的级别更高级,更像裁缝。衣柜里所放的原始布料
相当于原始数据,裁缝使用剪刀、尺子等加工布料;程序员采用运算符并选择循环处理数据。裁
缝把做好的衣服有规律地放在衣柜中,以便需要时提供给客户;程序员也需要把处理好的数据存
放好,以便在用户需要时显示给用户!那么重点来了,读者准备好做裁缝了吗?

第 2 章 数据类型、运算符与表达式 18

程序员编写程序就像裁缝做衣服。为得到想要的结果,裁缝需要区分布料的类型,程序员需
要区分数据的类型;裁缝需要通过各种工具对衣服进行加工,程序员需要通过加、减、乘、除等
运算对数据进行加工。

常量是指在程序运行过程中,其值不发生变化的量。常量又可分为整型、实型(也称浮点型)、
字符型和字符串型,整型常量、实型常量、字符型常量是在编译时可以直接编入代
码段的常量;字符串型常量是指存放在字符串型常量区中的常量。

变量代表内存中具有特定属性的一个存储单元,它用来存放数
据,即变量的值。这些值在程序的执行过程中是可以改变的。变量名实际上以一个名字代表一个对应的存储单元地址。编译、
链接程序时,由编译系统为每个变量名分配对应的内存地址。从变量
中取值实际上是通过变量名找到内存中存储单元的地址,并从该存储
单元中读取数据

由 define 定义的 PI 为什么是常量呢?接下来我们通过改变编译设置来了解
什么是预处理,了解预处理后你就会明白 define 定义的内容是常量的原因。右键单击对应的项
目,选择“属性”选项,将“预处理到文件”设置为“是”

小端方式进行数据存储,因此低位在前、高
位在后。

用单引号括起来的一个字符是字符型常量,且只能包含一个字符!

字符型变量使用关键字 char 进行定义,一个字符型变量占用 1 字节大小的空间。一个字符
常量存放到一个字符型变量中时,实际上并不是把该字符的字型放到内存中,而是把该字符的
ASCII 码值放到存储单元中,每个字符的 ASCII 码值详见附录 A。打印字符型变量时,如果以
字符形式打印,那么计算机会到 ASCII 码表中查找字符型变量的 ASCII 码值,查到对应的字符后会显示对应的字符

对于字符型变量,无论是赋 ASCII 码值还是赋字符,使用%c 打印输出时得到的都是字符,
使用%d 打印输出时得到的都是 ASCII 码值。将小写字母转换为大写字母时,由附录 A 中的 ASCII
码表发现小写字母与大写字母的差值为 32,因此将 c 减去 32 就可以得到大写字母 A。

C 语言规定,在每个字符串型常量的结尾加一个字符串结束标志,以便系统据此判断字符串
是否结束。C 语言规定以字符'\0'作为字符串结束标志。

由算术运算符组成的式子称为算术表达式,表达式一
定有一个值。

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3