**论NOIP之"不该错的"**(c++语言)

往往在做题过程中,当思想与算法,代码实践的构造都万事俱备时。结果最后一塌糊涂,这就需要大家的细心了。希望能帮助到大家。细节决定成败
一,输入输出
在一些读入字符的题里面,回车,整形与浮点混搭的读入等等。都是大家很容易不被注意到的。
在此,我向大家提出一些低级小错误的解决方法。
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++语言的易错点。
更多细节错误

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值