大学准备毕业,作为一名菜鸟级C语言学习者,接触这个语言也差不多一个月了,在这段学习的过程中我也有了自己一定的收获。’
首先我在学校也了解了C语言,但只是一点点皮毛,到指针数组和结构体综合运用时就懵逼了,所以想要学习嵌入式就得熟练掌握C语言。我发现这是一门需要多练的课,因为编写中有许多固定的东西,只要多练几次,应该没什么问题。还有就是新语句的问题,遇到全新的语句,个人觉得需要看书看视频,自己多在编译软件上试试,可能会找到些门道。还有要坚持,虽然编程是枯燥单调的过程,但是坚持到底看到最后的结果,谁的心里都会有喜悦和骄傲的感觉。
因为我做的题量非常少,敲起来那是相当无序,只能照着老师的代码打然后去理解,慢慢看懂后就开始写计算机二级C语言的题库,只有先理解了才会敲,我认为这是一个积累的过程,因为本人比较笨,敲代码对我来说实在没有思路,只能通过题目来积累形成一种思路。
因为一道题可以涉及很多个知识点:
比如题库中就有:知识点(基本运算符,for循环,函数传参和返回值)
,
#include <stdio.h>
double fun(double x[], int n)
{
int i,k=0;
double avg = 0.0,sum=0.0;
for(i=0;i<n;i++)
/***********found**********/
avg+=x[i];
/***********found**********/
avg/=n;
for(i=0;i<n;i++)
if(x[i]<avg)
{
/***********found**********/
sum+=x[i];
k++;
}
return sum/k;
}
main()
{
double score[12]={50,60,70,80,90,100,55,65,75,85,95,99};
double aa;
aa=fun(score,12);
printf("%f\n",aa);
}
因为当时我是根本不会,后面看视频讲解才了解到使用了for循环遍历各个数据与平均分比较,因为当时我就卡在了循环这里。还有/=,+=这些运算符也不会,就按老师的步骤拆开来就可以很好地计算平均分了。
其实对于初学者来说,不会写看不懂很正常,得先看懂了理清思路和代码运行过程才能做题,特别是for循环方面必须搞懂,判断条件和循环次数要控制好。天真的我以为int *p中,*p是变量,看了B站大佬的讲解才理解了int *就是一个指针类型,p是指针变量,这个弄清楚了就可以看懂大部分指针该怎么写了。
学习C语言的时间虽然不长,我也感觉学到了很多东西,C语言的知识点是基础,除此之外,对于C语言的学习,也有了自己的见解。首先,要认真学习教材,熟练掌握知识点,明白程序运行的流程。然后就是做题,很多看课本不能明白的问题或者是没有掌握好的知识,通过做题,我们能够更直观,更深刻的理解,所以可以通过刷题来巩固自己的知识,提高自己的能力,编码本就是一件熟能生巧的事。其次,做题一定要严谨,对于自己的代码,很多时候能够运行出来并不代表没有问题,所以要自己进行测试,自己制造数据,每种情况都包含,全部运行无误才算正确的程序,如果有错误,及时改正,调试程序也是一项程序员应必备的技能。再次,做题时要仔细分析,一个问题可能是有几十种或几百种方法来解,我们不应单单只追求把题做出来,更应追求解发的多样性,用不同的方式去解一道题,通过多个程序之前的比较,寻求最简的解法,用最简单的程序和最少的时间去解决问题,这应该是我们所追求的最高境界。