新手问个弱弱问题 程序设计课 急
#include <fstream.h>#include <string.h>
#define N 2
#define M 61
class Student
{
public:
char name[20];
char id[10];
int num;
int day;
int money;
public:
void setname(char * n)
{
strcpy(name,n);
}
char * getname()
{
return name;
}
void setid(char * i)
{
strcpy(id,i);
}
char * getid()
{
return id;
}
void setnum(int n)
{
num=n;
}
int getnum()
{
return num;
}
void setday(int d)
{
day=d;
}
int getday()
{
return day;
}
void setmoney(int mo)
{
money=mo;
}
int getmoney()
{
return money;
}
};
int t=60;
class Class: public Student
{
public:
ofstream fout;
void in(Class th[])
{
char name[20];
char id[10];
int num;
int day;
int money;
cout<<"* 请 输 入 商 品 名 :";
cin>>name;
th[t].setname(name);
cout<<"* 请 输 入 商 品 编 号 :";
cin>>id;
th[t].setid(id);
cout<<"* 请 输 入 商品数量 :";
cin>>num;
th[t].setnum(num);
cout<<"* 请 输 入 商品保质期 :";
cin>>day;
th[t].setday(day);
cout<<"* 请 输 入 商品价格 :";
cin>>money;
th[t].setmoney(money);
t--;
}
void cout1()
{
cout<<"* 名 字 :"<<name<<" 编 号:"<<id<<" 数量:"<<num<<" 保质期:"<<day<<" 价格"<<money<<endl;
}
void search(Class th[])
{
char id[10];
int i,j=0;
int m=0;
cout<<"* 请 输 入 编号 :";
while(1)
{
cin>>id;
for(i=0;i<M;i++)
{
if(strcmp(th[i].id,id)==0)
{
m=1;
}
}
if(m==0)
{
cout<<"* 输 入 编号 有 误 ,请 重 新 输 入 :";
}
else
{
break;
}
}
for(i=1;i<=M;i++)
{
if(strcmp(th[i-1].id,id)==0)
{
th[i-1].cout1();
}
}
}
void remove(Class th[])
{
char id[10];
int i,m=0;
cout<<"* 请 输 入 要 删 除 的 编号:";
while(1)
{
cin>>id;
for(i=0;i<M;i++)
{
if(strcmp(th[i].id,id)==0)
{
m=1;
}
}
if(m==0)
{
cout<<"* 输 入 编号 有 误 ,请 重 新 输 入 :";
}
else
{
break;
}
}
for(i=1;i<=M;i++)
{
if(strcmp(th[i-1].id,id)==0)
{
strcpy(th[i-1].id,"xxx");
cout<<" 已 删 除 "<<endl;
}
}
}
void print(Class th[])
{
int i=60;
for(i=60;i>0;i--)
{
if(strcmp(th[i].id,"xxx"))
{
th[i].cout1();
}
else
continue;
}
}
void rework(Class th[])
{
char name[20];
char id[10];
int num;
int day;
int money;
int i,h,m=0;
cout<<"* 请 输 入 要 修 改 的 学 号 :";
while(1)
{
cin>>id;
for(i=0;i<M;i++)
{
if(strcmp(th[i].id,id)==0)
{
m=1;
}
}
if(m==0)
{
cout<<"* 输 入 学 号 有 误 ,请 重 新 输 入 :";
}
else
{
break;
}
}
for(i=0;i<M;i++)
{
if(strcmp(th[i].id,id)==0)
{
h=i;
cout<<"* 请 输 入 要 修 改 的 信 息 :"<<endl;
cout<<"* 名称 :";
cin>>name;
cout<<"* 编号:";
cin>>id;
cout<<"* 数量 :";
cin>>num;
cout<<"保质期";
cin>>day;
cout<<"价格";
cin>>money;
}
}
strcpy(th[h].name,name);
strcpy(th[h].id,id);
th[h].num=num;
th[h].day=day;
th[h].money=money;
}
};
void main()
{
Class th[M],a;
int x,i,j;
char name[20];
char id[10];
int num;
int day;
int money;
ifstream fin("output.txt");
for(i=0;i<10;i++)
{
fin>>name;fin>>id;fin>>num;fin>>day;fin>>money;
th[i].setname(name);
th[i].setid(id);
th[i].setnum(num);
th[i].setday(day);
th[i].setmoney(money);
}
cout<<"* * * * * * * * * * * * * * 欢 迎 使 用 本 程 序 * * * * * * * * * * * * * *"<<endl;
while(1)
{
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;
cout<<"* | ①————————添加 | *"<<endl;
cout<<"* | ②————————查询 | *"<<endl;
cout<<"* | ③————————删除 | *"<<endl;
cout<<"* | ⑥————————显示 | *"<<endl;
cout<<"* | ⑦————————修改 | *"<<endl;
cout<<"* | ⑧————————退出 | *"<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;
cout<<"* 请 选 择 操 作 条 目 :";
cin>>x;
if(x==1)
{
a.in(th);
}
if(x==2)
{
a.search(th);
}
if(x==3)
{
a.remove(th);
}
if(x==6)
{
a.print(th);
}
if(x==7)
{
a.rework(th);
}
if(x==8)
{
break;
}
}
}由于文盲指针没教,只能用数组做一个简单的仓库管理系统
但是现在调用“显示”后好多烫,帮忙一下小弟!谢谢各位