#include?<iostream>
using?namespace?std;
int?main(){
int?a,b,c,d,max,sum,sim;
sum=c+d;
sim=c-d;
cout<<"*************************************比較大小***********************************"<<endl;
cout<<"請(qǐng)輸入兩個(gè)數(shù)a,b"<<endl;
cout<<"請(qǐng)輸入a=";
cin>>a;
cout<<"請(qǐng)輸入b=";
cin>>b;
if(a>b){max=a;}
else?{max=b;}
cout<<"最大值為max="<<max<<endl;
cout<<"如果a>b進(jìn)行加和計(jì)算,否則進(jìn)行減法計(jì)算"<<endl;
if(a>b){
cout<<"***********************************進(jìn)行加法計(jì)算*********************************"<<endl;
cout<<"輸入c=";
cin>>c;
cout<<"輸入d=";
cin>>d;
cout<<"c+d="<<sum<<endl;
}
else{
cout<<"***********************************進(jìn)行減法計(jì)算*********************************"<<endl;
cout<<"輸入c=";
cin>>c;
cout<<"輸入d=";
cin>>d;
cout<<"c-d="<<sim<<endl;
}
return?0;
}為什么進(jìn)行加法減法會(huì)出現(xiàn)加減的值不正確,應(yīng)該怎么修改呢?減法無(wú)論輸入什么值都為0,加法每次也是一個(gè)固定值,為-1717986920,請(qǐng)問(wèn)怎么修改
1 回答
已采納

onemoo
TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
變量在定義時(shí)沒(méi)有指定初值的話,其初值是隨機(jī)的(并不是0)。 也就是第4行這里,所有的變量一開(kāi)始都是隨機(jī)值。
那么在第5行 sum的值就是兩個(gè)隨機(jī)值之和——結(jié)果還是隨機(jī)值。 同理,sim也是隨機(jī)值。
其后,sum和sim的值再也沒(méi)有被更改,直到第23/31行你直接就把他們輸出了。 ?雖然之前你又重新輸入了c和d,但你并沒(méi)有用它們來(lái)重新計(jì)算sum和sim啊。
在定義變量時(shí)最好明確指定初值,以避免未初始化產(chǎn)生的隨機(jī)值被這樣誤用。
- 1 回答
- 1 關(guān)注
- 1436 瀏覽
添加回答
舉報(bào)
0/150
提交
取消