对于初次学习编程的小伙伴来说,首次编写程序时内心肯定是害怕的 激动的、兴奋的,可信心满满地拿着写的第一个程序在编译器上运行时,总会出现各种各样的问题。以下是我(蒟蒻)总结的初学者在刚刚编程时容易犯的错误:
1、中、英文标点符号搞混乱
#include<stdio.h>
int main()
{
int num1,num2,num3;
scanf("%d%d",&num1,&num2);
num3=num1+num2;
printf("%d",num3);
return 0;
}
以上代码猛地一看好像没啥问题,可是在编译器上一跑,结果编译器给你报错。
这是为什么呢?原来是把中文和英文的括号给搞混乱了,不仅是括号,最令人发疯的是逗号。因此,当程序报错时,检查一下程序的标点符号是否为英文。
2、在一行代码结束时,忘记加 ‘;’ !*
可能很多人在这方面吃过亏,每次写好代码后,忘记加分号,或者所加的是中文分号,因此,一定要记得加分号!加分号!加分号!
3、在使用scanf函数进行输入时忘记变量前的&
#include<stdio.h>
int main()
{
int num1,num2;
scanf("%d",num1);
num2=num1*2;
printf("%d",num2);
return 0;
}
上面这个代码便犯了这个常见的错误。这是因为对于初学的小伙伴一般是同时接触scanf()和printf()这两个输入输出函数的,而printf()在输出时变量前不加&,所以许多小伙伴误以为scanf()不加&也是可以的。
4、在比较两个数是否相等时把‘==’错写成‘=’**
由于我们在数学中的等于号是:’=‘,因此在写程序的时候经常犯这样的错误,并且这样的错误在找bug时是比较困难的。如:
#include<stdio.h>
int main()
{
int num1,num2;
scanf("%d%d",&num1,&num2);
if(num1=num2)
printf("两数相等");
else
printf("两数不相等");
return 0;
}
编译结果:
出现这样的迷惑结果,就是犯了第4个错误。
5、忽略了float 类型实际在计算机内部有存储误差
因为在常见的64位系统中flaot一般保证6位有效位,因此这个方面出的问题也比较迷惑(如下图)。如果没有必须的要求使用float的话,一般情况下还是使用double类型吧!
6、一些关键字地拼写错误。
比如经常有小伙伴把main写成mian,也闹出了许多笑话,因此要牢记常用的关键字。
好了,以上就是蒟蒻我总结的一些常见错误,欢迎大家批评指正。