#include <iostream>
using namespace std;
int main(){
int a,b,c,d,max,sum,sim;
sum=c+d;
sim=c-d;
cout<<"*************************************比较大小***********************************"<<endl;
cout<<"请输入两个数a,b"<<endl;
cout<<"请输入a=";
cin>>a;
cout<<"请输入b=";
cin>>b;
if(a>b){max=a;}
else {max=b;}
cout<<"最大值为max="<<max<<endl;
cout<<"如果a>b进行加和计算,否则进行减法计算"<<endl;
if(a>b){
cout<<"***********************************进行加法计算*********************************"<<endl;
cout<<"输入c=";
cin>>c;
cout<<"输入d=";
cin>>d;
cout<<"c+d="<<sum<<endl;
}
else{
cout<<"***********************************进行减法计算*********************************"<<endl;
cout<<"输入c=";
cin>>c;
cout<<"输入d=";
cin>>d;
cout<<"c-d="<<sim<<endl;
}
return 0;
}为什么进行加法减法会出现加减的值不正确,应该怎么修改呢?减法无论输入什么值都为0,加法每次也是一个固定值,为-1717986920,请问怎么修改
1 回答
已采纳
onemoo
TA贡献883条经验 获得超454个赞
变量在定义时没有指定初值的话,其初值是随机的(并不是0)。 也就是第4行这里,所有的变量一开始都是随机值。
那么在第5行 sum的值就是两个随机值之和——结果还是随机值。 同理,sim也是随机值。
其后,sum和sim的值再也没有被更改,直到第23/31行你直接就把他们输出了。 虽然之前你又重新输入了c和d,但你并没有用它们来重新计算sum和sim啊。
在定义变量时最好明确指定初值,以避免未初始化产生的随机值被这样误用。
- 1 回答
- 1 关注
- 1393 浏览
添加回答
举报
0/150
提交
取消