#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 關注
- 1437 瀏覽
添加回答
舉報
0/150
提交
取消