计算机专业的学生需要深入学习C语言吗?
你好,感谢你的邀请,很高兴回答你的问题
计算机专业的学生所学的专业课是很多的,C语言就是其中的一种,是否需要深学,需要看你将来计划从事什么样的工作,或者考什么样的研究生,不是说是计算机专业的学生就应该深学C语言,
第一,现在编程语言比较多,C语言是其中的一种,如果将来计划从事和C语言相关的工作,深学是必然的;
第二,如果你只是想简单的能够考试通过,没必要深学,只是考试的知识学会即可;
第三,如果你是考计算机的研究生,这就需要你看你所报考的学校专业的要求,是否需要对C语言进行深入的学习;
以上是我的建议,提问者可以根据我的回答采纳,如果能帮助到你,希望给个关注和赞。
计算机专业的学生应该要深入学好一门编程语言,比如可以选择C语言。不管是C语言还是其他的编程语言,都仅仅是一个工具,是为其他课程服务的一个编程工具,详细来说如下。
一、编程语言之间是相通的
计算机专业可能要学习多种编程语言,有的学生感觉有点困难。其实不必担心,编程语言之间有很多的相似性,认真学好C语言,其他的编程语言就能很快入手。
比如C语言的基本数据类型有整型、字符型等,复杂点的数据类型有数组型、结构型。在C++、Java中基本数据类型和复杂数据类型也是这些。所以学好C语言其他语言基本也就学了一大半。
二、C语言为其他课程服务
C语言为其他课程服务体现在编程。
比如有一门课程叫数据结构,这门课程重点是各种各样复杂的数据类型和算法。比如栈、队列、二叉树等数据结构,还有二分查找、树的遍历、图的搜索等算法。学好这些数据结构和算法只能说明你理解了这些概念了,但是要实际使用它们得使用编程语言。
现在不就有数据结构的教材使用C语言来实现的吗!比如使用C语言实现链表、队列、二叉树等数据结构,使用C语言实现堆排序、快速排序等算法。
所以学习C语言不是为了学而学,而是为了学好以后服务其他的课程,或者用于解决今后的生活和工作中的问题。因此,C语言很重要!
这个根据您未来的方向,给您提供建议如下:
C语言开发
如果您未来计划工作方向为C语言开发,建议深入学习C语言
深层次研究
如果您未来计划深层次研究嵌入式开发等,建议深入学习C语言
ACM比赛
如果您计划参加C语言相关的国际性比赛,建议深入学习C语言
其他工作
如果您未来的计划为其他方向,如Java开发,数据库开发,运维等工作,是可以不深入学习C语言的,正常完成学业即可。
如果未来计划在科技公司做创新研究,深入研究和您选择的方向相关的知识即可,不必刻意深入学习C语言。
如果未来计划进入事业单位、央企国企工作,不需要深入研究C语言,有可能更多的是需要您精通网络安全等知识。
……
希望对您有帮助,我身边就有计算机学院毕业的,但是在国企工作,完全用不到C语言。如果计划晋升管理岗,可能还需要补充业务知识。
JAVA、C、C++、Python同样是高级语言,为什么只有C和C++可以编写单片机程序?
从事编程十几年,JAVA、C、C++、Python这四种编程语言都玩过,前三种玩的比较多,python做为兴趣爱好或者玩脚本的时候弄过,编程语言在使用的时候主要还是适合不合适,单片机使用的场景属于功能简单,成本相对较低,现在也有高配版的单片机,本来单片机是不带系统的,非要硬扯到带系统的,从成本上考量就不是那回事了,成本主要包括两个方面有硬件成本,还有研发难度的成本这都是需要考虑的事情。
单片机开发语言C语言和汇编,别的语言还真不好上手,编程语言能力强大与否关键无外乎是不是能够控制底层的硬件,往往是一些门外汉喜欢编排一些故事,搞成什么编程语言的鄙视链条,真正的程序员底层的编程语言会羡慕上层编程语言的灵活性,上层的编程语言羡慕底层的编程人员能够控制硬件觉得是一件很神奇的事情,曾经面试过一个做了很多年java的工程师,居然想着拿出两年的时间来学习C语言,最后真还是降低工资标准进来了公司。
单片机编程主要是操作硬件的寄存器多一点,在编程语言方面使用的指针多一些,基本上while搭配中断把编程工作就差不多搞定了,如果硬要上java,python主要运行环境受不了,在运行java之前首先要把虚拟机给移植上,就单片机那点内存压根不是个,所以不同的编程环境不同的搭配,没有必要强求,无论是C/C++编程还是高级语言java,python在使用过程中编程套路都接近。
如果真要想在单片机上运行虚拟机还不如直接找个有操作系统的嵌入式设备,单片机完成的就是简单能够容易实现的功能,太多功能模块化的功能就不适合在这上面,解释性的语言执行需要一个运行环境不像单片机那么单纯,直接把全套的环境都运行在一个程序里面,单片机编程的时候有时候发现明明只有几行代码编译出来却有几百k,主要所有的驱动以及底层的实现都统统打包在一个可执行文件里面,嵌入式的运行环境相对来讲就比较复杂了,首先要把操作系统给安装到位,还有各种驱动提前准备好。
越是高级语言的编程越是框架性强,可移植性强,单片机编程适合简单功能的产品,比如常见的MP3,扫地机,以及玩具功能来回就是几个功能,没有特别复杂的功能,如果后续功能非常多而且界面操作非常繁琐就可以考虑使用嵌入式编程或者更加高级一点的编程语言了,永远都是适当的场景适用适当的编程语言,无所谓对错。
希望能帮到你。

