”学习C语言用一个学期,而且感觉是用代码做一些简单的数学题,没什么用途”,这说明你的感觉是对的,老师的教学方法错了,必须彻底改变学习方法,以提高学习效率。
象这种底层的高级C语言,一般学会并熟练使用,时间不超过两周。
学习编程语言,绝不能象高数一样,一节一节地学扎实,推理有据。编程语言类有它的学习方法。
我九十年代初,在工作中学C语言,两周时间,不仅学会了,而且做了一个集编辑、图形描画、零件程序解释的APP,之前一点基础都没有,就一本介绍库函数及C基础的英文书。
学习第一步:下载并安装IDE,通过做界面程序,验证所学的结构、变量、指针、逻辑关系、文件读写、内存分配、图形界面编写等,不仅学明白了,而且用于实际开发中。
很多初学者,老是喜欢钻牛角尖。如变量,unsigned char,char,signed char,BYTE,WORD,int,unsigned int,long int,LONG,LP,void *,int *,p=&i,p=(struct tr*)&p等等变量,表达式搞的晕晕乎乎,以致于觉得云遮雾罩,高深莫测。
很多人惊呼:老师水平咋这么高!
初学者建议使用VS编绎器,它对C,C++有极好的兼容性,在VS上做好RC,用子程序实现C的编程学习。
这时我们就陷入了一个学习误区。
学习第二步,把以上的指针、变量写成程序,编绎系统自然会告诉你那错了。有助于快速理解C语言的各种概念。
如下图,关于指针、结构:
上图所示代码,指针错了,系统提示error2102错误。指针改正后,如下图:
第三步,把编程语言与数学算法分开。C是语言,高数、线代、微分数值解等是算法。语言学明白了,实际应用时,把算法写成函数库,供以后使用
很多人认为,既然AI要用到算法,那么,学语言时,就要先学算法。
大错而特错!算法属于应用,属于数学建模,它是固定的,工作中随时可找到函数库,直接调用。如下,做库函数:
总结:把语言与数学要分开学。学习语言,要边做程序边学习。单纯C语言,学习时间应不超过两周时间。
编程语言最核心的东西就是算法,也就是你说的数学题。算法牛不牛,决定了产品牛不牛。百度背后的搜索算法,今日头条的推荐算法,成就了他们今天。
难道你想做复杂的数学题?如果你数学好可以做一些复杂的数学模型。比如人工智能领域ocr识别模板匹配算法(算法公式如图),你也可以搞下计算机中比较牛的几个算法:定向搜索算法、二分查找、分支界定算法、Buchberger算法、Diffie-Hellman密钥交换算法、数据压缩算法、Dijkstra算法、离散微分算法、动态规划算法、期望-最大算法、梯度下降算法、哈希算法、堆排序、决策树、 随机森林、分层聚类算法、线性分类器···
欢迎分享,转载请注明来源:艾迪网
评论列表(0条)