昨天我们班进行了一次小考试,来检测一下大家目前的学习水平,之前讲的内容是不是都接受了,因为一开始讲的都是C编程,而且以后找工作的时候笔试题基本上也都是一些最基本的C语言编程题。而之前大学里我的C基础真的很差,还有数据结构,第一篇日志就写过了,结构体、文件、堆栈、库函数、链表、二叉树……而入学后的两个星期,虽然对编程能力有了一点点的提高但是大部分的时间还是都花费在了理解一些最基本的概念上,所以自己写程序的时间还是不够多。
今天测试的结果出来了,我得了B-,前面的基础概念题答的还可以,都是平时讲过的:比如static的作用;动态库静态库的比较;栈的工作原理;c语言中的内存分配;结构体的字节对齐;指针的复杂类型表示……以后这些基础的题肯定要牢记啦,嗯,没问题的。
到后面有3道编程题:分别是自己写一个strncmp函数原型;创建和遍历链表;N*N矩阵元素顺时针放置问题(最后都没时间写了)。通过不到两个小时的测试吧,我发现我写程序哈(此处指用手写)实在是太慢了,而且好像简单的还可以按以前见过的算法实现,一遇到复杂一点的题目,根本没有思路,无从下手,不知道该怎么把这个问题转化成程序语言,说白了就是不知道用什么算法,这一点在几个同学身上都很普遍,其实都知道产生这种情况的原因就是,代码看得少,练得少,你根本连有多少,有什么算法都不知道,又怎么会知道怎么用呢?
可是,这个问题真的不是那么简单啊!我原来也以为凡事只要肯花时间就可以做好,但是我错了,不只要肯花时间还要肯花心思才行!想想平时基础比较好的同学,也是经常问老师问题的同学,他们想的都是自己理解的东西和老师讲的有什么冲突,然后改变一个题目,联系到这个知识点的话,可不可以实现,或者往以后要学的内容上联系,是不是该考虑的更全面,还是只要实现它就可以了,具体的又其他使用者来完成……好多好多的想法,我都从来没有过,哎,我只是记住了老师说的,书上写的,然后自己默写一遍,以为是自己的东西了,谁知道,就昨天,考试前,我刚看的链表程序,几分钟之后,就忘了!现在再看自己写的程序,其实根本就没有理解为什么用这个算法,为什么要用循环结构,为什么要先分配内存,到底该不该用指针,用指针的时候要注意不能进行的操作,……等等等等吧。哎,真的觉得挺可悲的,挺打击人信心的,之前的努力竟然都没有得到回报,原因就是盲目的学习,求胜心太强,不懂得什么事情都是要循序渐进的,而且注重细节,时刻准备的人,才能得到机遇的眷恋。
所以,我想以后不管是看书,上课听讲,自己动手写程序的时候,都要全身心的投入,真的,既然这是我以后的专业,而且是自己真正感兴趣的东西,我没有理由不为它付出全部!我要学它,我要学会它,我要学会好好用它!每天这样问自己1W遍,那不用任何人教,我想我该知道怎么去做了吧!用功不行,那样也许会让人觉得很有前途,但要用心才能获得更大更真实的进步!在充满困难和挫折的道路上,让一个个错误早点发现,多学一点,多看一点,成长快乐!加油!
待续……
阅读(1092) | 评论(0) | 转发(0) |