问一下我上学期没怎么学c语言,这个学期讲数据结构与算法,我还需要自己再学一学c语言吗?
需要
你学C语言,一般是要学习数据结构的,因为这种编程语言是没有丰富的数据结构,只有简单的整型、字符串以及布尔类型。你需要自己定义一些数据结构,以便能满足实际的业务场景。
至于算法,你要结合实际的场景来学习。如果你的业务场景中没有用到算法,那是不需要学习的。
**
大家应该看过黑客帝国,开始有一张图片,一堆数字在不断变化我们只看这些数字,看不到机器是如何运行的,黑客们进入系统,便可以看到图像、高楼、汽车,当然还有美女。
当然机器语言并不是我们常用的十进制,而是二进制,只存在0或者1。程序员如果用机器语言和计算机沟通,显然是宇宙级难度的,我们社会估计还处在蒸汽时代。
幸运的是,前辈们使用汇编语言代替了机器语言,汇编语言属于低级语言,前辈们,甚至于现在还有人在使用这门语言,并不是说这门语言不好,而是说这门语言效率低。如果你对机器底层感兴趣,可以学习汇编,掌握汇编语言,可以了解机器是如何运行的,变量间是如何在硬件上传递的。最早的操作系统都是用汇编编写,佩服前辈。
1972 年,为了移植与开发 UNIX 操作系统,丹尼斯·里奇在贝尔电话实验室设计开发了 C 语言。
C语言的出现,极大地解放了生产力,很好很强大。可以说C语言的出现是跨时代的,现在几乎所有的编程者都懂得C语言,不完全统计,60%的程序员还在使用C语言编程。有些高级语言看似摆脱了C语言的规则,但是实质上也是C语言的变种,只不过是重新定义了规则而已。
要想学会C语言,有必要放下包袱,做一个不求甚解的小白。只需了解C语言规则,按照规则来实现我们的需求即可(当然做学术,不能这要,要潜心研究,_)。
Java、C++、C#、Python的等高级语言的出现,使得开发者和计算之间有了更高效的沟通方式,这些和C语言不同在于,他们是面向对象的编程。
回到正题,作为小白,如何学习C语言呢,建议大家看视频或者看书,跟着老师们思路,一句一句在自己电脑上敲打代码,编译,运行,看实际运行结果。
成功的道路上不可能一帆风顺,让我们乘风破浪,迎接美好的明天。
本人重新整理了C语言学习过程中的关键知识,大家可以根据自己的情况学习。
需要的,虽然C++有STL库和algorithm对大部分算法和数据结构进行了封装,但是你们老师大概率不允许你们用的。。
或者说,算法和数据结构课是学习如何用c语言编写这些已经被封装和使用的数据结构。
没学过一门语言去学数据结构,完全学不了