不少同学从Hello world学到文件操作之后,回顾感觉会又不会? 学会了又感觉没学会?这种不踏实、模糊虚无的感觉?

原因在于编程不同于理论学科,你听懂和理解了理论就可以运用,比如历史地理,看完书,我们在讨论的时候:“北美洲和南美洲的分界是什么? 辛亥革命是什么时候? ”这些问题只要你看到过,脑子有记忆你都可以说出来,从大脑记忆到用嘴表达是我们很顺理成章的事情,因此你会觉得很容易。

如果是编程,比如我们在谈论数组的时候,你想到的只能是书本上 “int a[10]”、“中括号”、“{1,2,3,4,5,6,7,8,9}”这些零星的关键字,你想了想说:“哦,我好像学过!” 但其实呢,你压根没在电脑上敲出来过,更没有写过具体的例子,经过编译、运行看到运行效果等等。

因此你的印象就停留在书本上那些,总不用那么忘掉只是迟早的事情。何况编程是一门非常强调动手的课程,只看不练能行吗? 无论是从事开发、教学、竞赛还是当做一个工具,都需要足够的上机练习才可以证明你真的掌握了这门编程语言。

因此缺失上机编码的过程就会让你产生前面提到的那种虚无的感觉,感觉自己学过又没会,过阵子就会忘掉!

所以回到我们的最初问题上来,学编程最难最关键的部分不在于学,而在于练。在具体点:在于配套的学练过程。

因此对于正在学习的同学,我们的建议是,不必拘泥于学习资料的形式,是视频还是书籍,是线上还是线下,找到自己舒服的形式就可以。

而最关键得在于学习过程中,及时的训练刚刚理解的知识点,从而通过上机练习巩固理解的知识,由大脑的意识通过双手实践出来,最终深深的印在大脑皮层,学和练的配合,最终牢牢掌握这门课程。

C语言网正是基于这种考虑,为大家提供教程的同时提供对应的OJ练习,让大家每个知识点都能有完整的代码实践,检验自己强化动手,而杜绝眼高手低的纯理论学习,最终避免学完之后感觉没学一样的效果。

这就是学习编程目前最大的问题和解决方法,希望可以帮助更多的编程学习者!

学习编程还要注意一大禁忌:“眼高手低”

这个词第一次听到是我在上初中时,数学老师讲的,为什么会用这个词,因为许多数学题,比如方程式,我们看着感觉很简单,不用练了,就跳过到下一个。

待到考试的时候,遇到这个题了,嗯感觉会,但是一做就错,这就是所谓的眼高手低导致的后果。

原因在于眼睛看到的懂是基于“感觉”或“关联”的直觉感受,比如这个题要用到的xx知识点,我学过,那就问题不大,但事实上,一道数学题的实现、解决过程需要从头到尾的逐步实现、环环相扣的严谨的过程,任何一个环节写不出来、关联不上就进行不下去或者中途出错了,这就一定导致错误或失分。

同样的道理,编程也如此,我们看这个题眼睛觉得很简单,但手也觉得简单吗?真的不一定,因此“”眼高手低”的问题的就非常值得被重视了!

以我们常见的Hello World题为例,不少书籍的入门第一个程序就是如此,但有多少同学真的上机实践一下呢?

相信不少同学会认为,这个程序就一句printf,我照着敲还会出错吗?

直接往后看吧

但事实上就会因为少一个分号、括号不对、打错一个字母等等问题造成就是不对的情况

千万别忘了,编程是一个严谨的编码实现过程!

某网站的Hello World题的通过情况,该题目仅仅是输出HelloWorld和*号的问题,有超过十万次的提交,但经过机器严谨的评测,则会出现各种各样的问题,出现惊人的通过率!仅不到40%!十个人当中六个人不通过!大家可想而知,有多少同学面临动手差的问题!

大家可想而知,问题出在哪里,为什么编程学了感觉没学一样提到过学练同步的必要性,因此大家理解尤其在编程学习领域的重要性和必要性,强化上机重视上机,才能真正掌握编程这门技术,才能踏上学习编程的正确路线!

如果你不知道如何学习C/C++,你可以来找我,学习资源可以更好的帮助你学习,我这里有成体系的视频教程,你不用在网上寻找零碎的资料,更好的节约时间。

如果你是想转行或是正在学习编程的同学,马上到期末了,大家一起备战期末考,领取资料吧~

欢迎大家进群探讨学习C/C++。

又到期末了,为什么学完C语言觉得好像没学一般?复习资料来一份的更多相关文章

  1. 为什么学完C语言觉得好像没学一般?

    不少同学从Hello world学到文件操作之后,回顾感觉会又不会? 学会了又感觉没学会?这种不踏实.模糊虚无的感觉?   原因在于编程不同于理论学科,你听懂和理解了理论就可以运用. 比如历史地理,看 ...

  2. 闭嘴,给你一个数!1分钟,学完C语言指针,不扎手只扎心的针!

    序言 指针是C语言学习者绕不过的一道坎,也是C语言学习者不得绕过的一道坎.辨别一个人C语言学的好赖就看他对指针的理解怎么样.指针内容也是工作面试经常问到的问题.本文将带你重新认识那个绊倒你的指针,以解 ...

  3. 【机器学*与R语言】2-懒惰学*K*邻(kNN)

    目录 1.理解使用KNN进行分类 KNN特点 KNN步骤 1)计算距离 2)选择合适的K 3)数据准备 2.用KNN诊断乳腺癌 1)收集数据 2)探索和准备数据 3)训练模型 4)评估模型的性能 5) ...

  4. 学了 C 语言到底能做什么, 能从事什么工作?

    前言 经常有小伙伴问我,你是做C/C++的,那学C语言可以做什么呢?尤其是还在学校的同学,感觉自己学了很久,什么也做不了,一度怀疑自己是不是不适合程序员这个方向. 开始我都是直接说可以开发嵌入式啊,做 ...

  5. 学了C语言,如何写个程序计算出每个月的第一个星期一对应的日期

    在前面,我们分别利用泰勒公式和C标准库中的mktime()函数推算了某个特定日期所对应的星期几,刚做完这些,就又遇到了一个与日期相关的新任务: 老板把每个月例会的时间定在了每个月的第一个星期一,他让我 ...

  6. 学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装

    在这一系列的前一篇文章学了C语言,如何为下载狂人写一个磁盘剩余容量监控程序?中,我们为下载狂人写了一个程序来监视磁盘的剩余容量,防止下载的东西撑爆了硬盘.可是,这两天,他又抱怨他的下载程序不好用,让我 ...

  7. 零基础学完Python的7大就业方向,哪个赚钱多?

    “ 我想学 Python,但是学完 Python 后都能干啥 ?” “ 现在学 Python,哪个方向最简单?哪个方向最吃香 ?” “ …… ” 相信不少 Python 的初学者,都会遇到上面的这些问 ...

  8. Golang入门(3):一天学完GO的进阶语法

    摘要 在上一篇文章中,我们聊了聊Golang中的一些基础的语法,如变量的定义.条件语句.循环语句等等.他们和其他语言很相似,我们只需要看一看它们之间的区别,就差不多可以掌握了,所以作者称它们为&quo ...

  9. Golang入门(2):一天学完GO的基本语法

    摘要 在配置好环境之后,要研究的就是这个语言的语法了.在这篇文章中,作者希望可以简单的介绍一下Golang的各种语法,并与C和Java作一些简单的对比以加深记忆.因为这篇文章只是入门Golang的第二 ...

随机推荐

  1. 这份SpringMVC执行原理笔记,建议做java开发的好好看看,总结的很详细!

    什么是SpringMVC? Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供的web模块,包含了开发Web 应用程 ...

  2. laradock使用问题汇总

    laradock简介 一套完整的基于Docker的PHP开发环境.包含了预先打包的Docker镜像,所有预先配置都是为了提供一个完美的PHP开发环境(中文文档).PS: 不是最新版的 windows1 ...

  3. echarts柱状图接口提供的数据是数值,要在顶部展示百分比

    查阅echarts配置文档,柱状图并没有类似于饼图的直接展示百分比的参数,所以需要自己配置. window.onload = function () { var list1=[25.02,19.76, ...

  4. 浅谈 van Emde Boas 树——从 u 到 log log u 的蜕变

    本文参考算法导论完成. 模板题在此 QwQ 优化的过程比较长,还请读者耐心阅读,认真理解. 最初的想法 我会暴力! 用一个 \(size\) 数组维护每个元素出现的次数. 不细讲,时间复杂度 \(O( ...

  5. Happy Tree Friends——团队展示

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 团队名称 Happy Tree Friends 这个作业要求在哪里 团队作业第一次 这个作业的目标 团队合作 作业正文 正文 其 ...

  6. C#(二)基础篇—操作符

    2020-12-02 本随笔为个人复习巩固知识用,多从书上总结与理解得来,如有错误麻烦指正 1.数学操作符 int a=2,b=3,c=0; float d=0; c=a+b; //c=5 c++; ...

  7. 转:解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别

    解析HTTP协议六种请求方法,get,head,put,delete,post有什么区别 标准Http协议支持六种请求方法,即: 1.GET 2.POST 3.PUT 4.Delete 5.HEAD ...

  8. Python特殊序列\d能匹配哪些数字?

    在缺省语言环境下,老猿对\d的匹配范围做了个测试,下面的数字包含半角数字.全角数字.中文数字,测试语句如下: >>> m=re.search(r'(\d*)(\D*)(\d*)',' ...

  9. BlueCMS代码审计

    BlueCMS版本号为:bluecms_v1.6_sp1 本地搭建环境后将源代码丢进seay源代码审计系统,开启本地web服务页面访问,大部分白盒+小部分黑盒审计 搭建好环境后第一步先检查是否有重装漏 ...

  10. 再次学习sql注入

    爆所有数据库 select schema_name from information_schema.schemata 先爆出多少个字段 id = 1 order by ?; mysql5.0及以上 都 ...