c++作业,还没学完,有没有大佬告诉我为什么会错
题目是公司用户数在2012年十月是10亿,如果以百分之2、3、4增长的话,用户何时才能达到25亿代码能够运行的是这样的
#include <iostream>
using namespace std;
int month_X(double rate);
double num2012 = 10e8; double num2013 = 2.5e9;
int main()
{
double rate;
cin >> rate;
if (100 * rate == 2)
{
int t;
t = month_X(rate) - 2;
cout << (2013 + t / 12) << "年" << t % 12 << "月";
}
else if (100 * rate == 3)
{
int t;
t = month_X(rate) - 2;
cout << (2013 + t / 12) << "年" << t % 12 << "月";
}
else if (100 * rate == 4)
{
int t;
t = month_X(rate) - 2;
cout << (2013 + t / 12) << "年" << t % 12 << "月";
}
else;
return 0;
}
int month_X(double rate)
{
int month;
for (month = 0; num2012 < num2013; month++)
{
num2012 = num2012 * (1 + rate);
}
return month;
}
但如果把if语句里面的变量t不要了,整个if就一句这个
cout << (2013 + (month_X(rate) - 2)/ 12) << "年" << (month_X(rate) - 2) % 12 << "月";
结果就会很奇怪
求助大佬!!! //因为你的这句话
double num2012 = 10e8; double num2013 = 2.5e9; yuxijian2020 发表于 2021-4-1 11:23
为什么呢?求指点{:10_266:} //这里你定义的是全局变量
double num2012 = 10e8; double num2013 = 2.5e9;
//这里年的时候计算了一次上面2个全局变量的值已经改变了,然后月的时候又计算了一次,这时你的初始值已经不是原来的值了
cout << (2013 + (month_X(rate) - 2)/ 12) << "年" << (month_X(rate) - 2) % 12 << "月"; yuxijian2020 发表于 2021-4-8 10:59
懂了懂了,谢谢老哥{:10_284:}
页:
[1]