读书人

c++primer第五版第五章编程习题

发布时间: 2012-08-17 02:08:34 作者: rapoo

c++primer第五版第五章编程练习题
#include<iostream>
using namespace std;
int main()
{
int i=0;
int total=100;
int total1=100;
do
{
total=(100*0.1)+total;
total1=(total*0.05)+total1;
i++;
}while(total<total1);
cout<<"第"<<i<<"年total的投资比total1小"<<endl;
cout<<"当年total的投资是:"<<total<<endl;
cout<<"total1的投资是:"<<total1<<endl;
return 0;
}


编译也通过了,但返回的答案是没有再循环直接跳出来了,输出,第1年total的投资比total1小
当年total的投资是:110;

total1的投资是:105;
while这个条件好像就没有用,这是为什么啊???

[解决办法]
int total=100;
int total1=100;
do
{
total=(100*0.1)+total;
total1=(total*0.05)+total1;
i++;
}while(total<total1);

值循环了一次就跳出来
是否写错了?
[解决办法]
LZ是不是这个意思?

C/C++ code
#include<iostream>using namespace std;int main(){    int i=0;    int total=100;    int total1=100;    do    {        total=(100*0.1)+total;        total1=(total*0.05)+total1;        i++;    }while(total>=total1);    cout<<"第"<<i<<"年total的投资比total1小"<<endl;    cout<<"当年total的投资是:"<<total<<endl;    cout<<"total1的投资是:"<<total1<<endl;    return 0;}////第21年total的投资比total1小////当年total的投资是:310////total1的投资是:315////请按任意键继续. . . 

读书人网 >C++

热点推荐