如何学习C语言

        这里是一个正在重刷C语言的学生党,由于一开始没能掌握好C语言的学习方法,以及自身学习不能坚持等原因,C语言水平只停留在中等阶段,期末考试也差强人意。因此我希望重拾C语言,培养编程思维,为以后的技能进阶做好准备。

学习C语言的一点心得

 1.独立思考

        编程最终的目的是真正解决一些问题,这就需要我们结合实际,独立思考,分析问题。

        当然,借鉴别人的代码是很好的学习方式,我们不谈最低级的“抄代码”,单说“借鉴”,也应该是在经过自己冥思苦想、运用自己目前所学,尝试过一些解决方法后实在没有解决能力的情况下再去借鉴。

        或许别人的思路确实很妙,但如果没有自己的思考,就去用别人的思路,只会束缚自己,限制了自己的创造力和解决问题的能力,并不利于C语言的学习。

2.学会复习整理,内化知识

        这个建议适用于所有的学习,大脑喜欢遗忘,当天学到热乎的知识,可能过一周就忘得只剩20%了。

        内化知识的方法很多,比如写注释写博客举一反三(思考这个方法可以应用于什么场景,哪些问题可以用到,以前的某些题是否可以用这个方法解决等)……

        总之,学会整理,即时巩固,才能内化知识。

3.刨根究底

a. 学习过程中遇到不会或者模糊的知识点,要有刨根究底的精神,将这个点搞清除弄明白。

b. 但是如果涉及到更深入的、暂时很难理解的知识,就暂时放下,不要花过多的精力,有些知识学习到一定阶段自然就理解了。

 c. 对网上一些讲解有质疑或不理解的,可以多看类似的内容进行对比,同时自己进行实践验证,这样可以较为有效且准确地吸收知识。

 

比如:对于字符串以  \0  为结束标志这个知识点,怎样更好的理解呢?

我们可以直接在电脑编译器上进行验证——

 

#include<stdio.h>

int main()
{
    char arr1[]= "abc";
    char arr2[]={'a','b','c'};
    char arr3[]={'a','b','c','\0'};
    char arr4[]={"abc\0def"};

    printf("%s\n",arr1);    //数组arr1中,双引号引起的"abc"就是一个字符串,以\0正常结尾。

    printf("%s\n",arr2);    //数组arr2中,输出单引号引起的'a','b','c'组成的结尾没有\0的字符串,因此c后面出现乱码

    printf("%s\n",arr3);    //数组arr3中,与arr2相比加上了字符'\0',因此输出正常结尾的字符串abc

    printf("%s\n",arr4);    //数组arr4中,abc后面出现了字符\0,表示到c处该字符串结束,因此后面的def没有被打印出来

    return 0;
}

输出结果——

3b3dbb1bd6574ee983f4d84642205622.jpg

(分析见注释)

这样分析下来是不是对"字符串以  \0  为结束标志"这个知识点印象更加深刻了呢?

4.大量练习

        说了这么多,其实最重要的还是要多多练习,尝试解决各种问题,在实践中积累经验才是最有效的学习方法。

 PS.这些经验也借鉴了老师和优秀学长们的学习方法,希望自己能坚持下来,做到这几点。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值