注册 登录
编程论坛 VC++/MFC

一道简单的习题,求教

seep666 发布于 2010-10-22 11:19, 399 次点击
问题,用数组记录五天的赚的钱及星期几,然后计算出当天比前一天涨多少,
程序是:
#include<iostream.h>
#include<string.h>
class stock{
private:
    char name[10];//记录当天的日期
    int money;   //当天赚的钱
public:
    stock(char *a,int b)
    {strcpy(name,a);money=b;}
    int y_money()
    {money=b;}
};
 void main()
 {
     stock s[5]={s("Monday",70),s("Tuesday",20),s("Wednesday",30),s("Thursday",80),s("Friday",100)};
     int i;
     for(i=1;i<5;i++)
         {cout<<"第"<<i+1<<"天"<<"比第一天涨了:";
       cout<<s[i+1].y_money-s[i].y_money<<endl;}
 }
好多错,我是刚刚学C++,请指教
1 回复
#2
shafeilong2010-10-22 12:40
#include<iostream.h>
#include<string.h>
class stock{
private:
    char name[10];//记录当天的日期
    int money;   //当天赚的钱
public:
    stock(char *a,int b)
    {strcpy(name,a);money=b;}
    int y_money()
    {
    //    money=b;  here is wrong  ,should return a  value
        return money;
    }
};
void main()
{
    // use stock to replace s
    // stock s[5]={s("Monday",70),s("Tuesday",20),s("Wednesday",30),s("Thursday",80),s("Friday",100)};
    stock s[5]={stock("Monday",70),stock("Tuesday",20),stock("Wednesday",30),stock("Thursday",80),stock("Friday",100)};
     int i;
     for(i=0;i<5-1/*not five*/;i++)  //wrong logic
         {cout<<"第"<<i+2/*not  i+1 */<<"天"<<"比前(第)一天涨了:";  // not the first day.....
     cout<<s[i+1].y_money()-s[i].y_money()<<endl;}      //you lose a "()"
}
1