往往在做题过程中,当思想与算法,代码实践的构造都万事俱备时。结果最后一塌糊涂,这就需要大家的细心了。希望能帮助到大家。(细节决定成败)
一,输入输出:
在一些读入字符的题里面,回车,整形与浮点混搭的读入等等。都是大家很容易不被注意到的。
在此,我向大家提出一些低级小错误的解决方法。
1,仔细,再仔细!!!
(详细内容略。。。)
2,都是回车惹的祸。
在输入中,字符类型经常将结尾的回车读入,而在后加一个“读入回车”往往起不了想要的效果。这时我建议大家可以用一下“getchar();”。它可以将之前读入的字符“垒”起来。遇回车后才依次读入(神器)。
或者可以用“%s”一次到位。
在输出中,就要详细考虑回车的位置了(借助for与if)。
for(int i=1;i<10;i++)
printf("%d ",c[i]);
printf("%d\n",c[10]);
for(int i=1;i<=10;i++)
{
if(i!=10)
printf("%d ",c[i]);
else
printf("%d\n",c[i]);
}
3,当公式用错时。
在考题中,数学公式肯定是必不可少的。但如果在做题中都到最后一部输出了,却突然忘记了公式。这就十分尴尬了。
二,数据重合
1,重复使用
不要嫌内存太small,反复使用一个变量,该用全局就要用,不该用就不要用。
2,数据地位
在函数,循环中>=2个拥有重复名字的量极有可能被重复混淆。建议大家多定义几个变量。
int i;
for(int i=1;i<=10;i++)
for(int i=1;i<=10;i++)
3,定义乱入
把浮点数与整形放在一起。在进行运算时应统一变为浮点。同理,在遇到标准函数库中返回值类型不一样时也要统一。
int a=int(pow(2,2));
三,大小
1,大小不一
一个边缘值较小的相对于另一个大的,如果强行把它放大值就极有可能出现溢出的情况。相反一个边缘值较大的相对于另一个小的,如果把它的边界值变小,有可能溢出就意想不到的发生了。
double a;
int b=a;
2,在做题时,一定要认真,仔细地审题。看好数据的类型,并评估一些数据的大小。
int a;
long long a;
double a;
float a;
bool a;
char a;
long double a;
以上是我总结的一些关于c++语言的易错点。
更多细节错误