为了账号安全,请及时绑定邮箱和手机立即绑定

C++求问,在线等

C++求问,在线等

C++
山姆Huang 2015-10-30 10:05:42
#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啊。


在定义变量时最好明确指定初值,以避免未初始化产生的随机值被这样误用。

查看完整回答
反对 回复 2015-10-30
  • 1 回答
  • 1 关注
  • 1393 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信