关于C++简单问题...

来源:百度知道 编辑:UC知道 时间:2024/06/25 04:05:10
float a,b,sum1=0,sum2=0;

//代码1
{
if(b>=90 && b<=100) sum2+=4*a;
if(b>=80 && b<=89) sum2+=3*a;
if(b>=70 && b<=79) sum2+=2*a;
if(b>=60 && b<=69) sum2+=1*a;

}

//代码2
{
if(b==100) sum2+=a*4;
if(b>59 && b<100) sum2+=a*((int)b/10-5);
}

代码1和代码2不等价吗??b是0-100的数..
请高手帮忙看看,谢谢

嗯,如果一定要挑毛病的话
代码2改成
if (b>=60 ...

毕竟b是float

明显不等价,b=89.5的话根本不会进入代码1的任何循环
好像是处理分数的,如果没有半分的话把b改成int就对了