feat: 好几章

This commit is contained in:
camera-2018
2023-04-14 15:41:04 +08:00
parent dbd4e84eae
commit 15c19b9b1e
135 changed files with 8128 additions and 11 deletions

View File

@@ -0,0 +1,39 @@
# C 语言前置概念学习
如何学习 C 语言?<strong>第一步:Throw away the textbook。</strong>也许你可以通过以下途径:
以下方式难度由易到难,但并不意味着收获由小到大:
1.Video[B 站翁恺的 C 语言课程](https://www.bilibili.com/video/BV19W411B7w1?spm_id_from=333.337.search-card.all.click&vd_source=da5a5affb1b0c71c0d7e410b1d1a3c17)(非常基础,缺点是只看视频学的过浅)
2.MOOC[翁凯 C 课程的 MOOC 慕课](https://www.icourse163.org/course/ZJU-9001)(同上,慕课的习题和 Projects 性价比不高,几乎没有差别)
3.Web[菜鸟教程](https://www.runoob.com/cprogramming/c-tutorial.html)(基础但是覆盖面较广,不够深入)
4.Web[CNote](https://github.com/coderit666/CNote)(例子密集,学习曲线平滑,覆盖面广且具有深度)
5.Book<strong>教材替换用书——《C Primer Plus》</strong>(基础且深入的恰到好处,有一定拓展,可能后面的章节有点难懂,是一本不可多得的好书,不要忽视课本习题及 Projects
6.MOOC[Introductory C Programming 专项课程](https://www.coursera.org/specializations/c-programming)<strong>全英文</strong>,好处是涉及到计算机思维,包含许多常用 tools 的教学例如 git、make、emacs、gdb视频讲解结合文档阅读对于 C 的重要核心知识讲解透彻,难度颇高,建议用作提升)
7.Web[LinuxC 一站式编程](https://akaedu.github.io/book/)(难度大,枯燥硬核,收获多,基于 linux
### 学习建议:可以选择其一或多种学习。
- 对于缺乏计算机基础这里的基础指的是计算机的日常使用的同学1、2是不错的选择但在学完后要选择 4、5、6 进行补充巩固提高。
- 对于有一定计算机基础的同学,直接上手 4、5、6 都是很不错的选择。
- 对于有一定 linux 基础以及计算机基础的同学,或是同时想同步学习 linux 的同学7 是可选择的。
关于“6.Introductory C Programming 专项课程”的一些思考
该课程的免费修读需要在 coursera 上申请助学金(并不困难)[申请教程](https://zhuanlan.zhihu.com/p/394479617)。
对于以上几种方式6 有其特殊性6 不仅仅是对于 C 语言的学习其其中包含的计算机思维Tools 的使用等等都有其普遍适用性。对比其他方式(包含学校课程)不难发现,对于计算机思维的训练与提升,在一定程度上,我们存在着缺失,但它又是极其重要的,如果你希望在学习 C 的同时又有其他多方面的提升,强烈建议你试试该课程(不要被英语劝退![2.6 以理工科的方式阅读英语](https://gw9u39xwqi.feishu.cn/wiki/wikcnlNoFdSGx5FYGa0x2FtCX6g) )。
当然你也可以通过其他方式培养计算机思维以及学习 Tools 的使用。但是越早培养,越有优势。
计算机思维与计算机科学与编码能力
![](static/Hqzbbs6iYobnxWxz11Ocfa9gnHd.png)
### <strong>CS education is more than just “learning how to code”!</strong>