#include "stdafx.h"
#include <stdlib.h>
#include <conio.h>
#include<cctype>
#include<iostream>
#include <cstdlib>
#include <windows.h>
#include<iterator>
#include<fstream>
#include<string>
#include<vector>
#include<cctype>
#include"ctype.h"
#include <windows.h>
#include <stdio.h>
#include <time.h>
using namespace std;
class blank
{public:
int money;
int speed;
void grow(int x,int y);
};
void blank::grow(int x,int y)
{
x=int(x*(100+y)/100);
}
void main()
{blank visa;
visa.money=1000;
visa.speed=20;
int i=0;
while(i<10)
{
visa.grow(visa.money,visa.speed);
cout<<visa.money<<endl;
i++;
}
}
神奇的是。输出10个月的本息和为什么还是初始值1000?哪里错了?成员函数不是可以改变成员数据么?
我希望初始金币为1000,10个月每个月输出月利率为百分之20的本息和 求高手。
#include <stdlib.h>
#include <conio.h>
#include<cctype>
#include<iostream>
#include <cstdlib>
#include <windows.h>
#include<iterator>
#include<fstream>
#include<string>
#include<vector>
#include<cctype>
#include"ctype.h"
#include <windows.h>
#include <stdio.h>
#include <time.h>
using namespace std;
class blank
{public:
int money;
int speed;
void grow(int x,int y);
};
void blank::grow(int x,int y)
{
x=int(x*(100+y)/100);
}
void main()
{blank visa;
visa.money=1000;
visa.speed=20;
int i=0;
while(i<10)
{
visa.grow(visa.money,visa.speed);
cout<<visa.money<<endl;
i++;
}
}
神奇的是。输出10个月的本息和为什么还是初始值1000?哪里错了?成员函数不是可以改变成员数据么?
我希望初始金币为1000,10个月每个月输出月利率为百分之20的本息和 求高手。
void blank::grow(int *x,int y)
{
*x=int((*x)*(100*y)/100);
}在main中调用的时候,如下
visa.grow(&(visa.money),visa.speed);原理楼主自己研究。
我希望初始金币为1000,10个月每个月输出月利率为百分之20的本息和 求高手。
===============
你上面的函数grow等于什么都没有做啊。你改变的是形参,并不是成员变量。
#include "stdafx.h"
#include <stdlib.h>
#include <conio.h>
#include<cctype>
#include<iostream>
#include <cstdlib>
#include <windows.h>
#include<iterator>
#include<fstream>
#include<string>
#include<vector>
#include<cctype>
#include"ctype.h"
#include <windows.h>
#include <stdio.h>
#include <time.h>
using namespace std;
class blank
{public:
int money;
int speed;
void grow();
};
void blank::grow()
{
money=int(money*(100+speed)/100);
}
void main()
{blank visa;
visa.money=1000;
visa.speed=20;
int i=0;
while(i<10)
{
visa.grow();
cout<<visa.money<<endl;
i++;
}
}