设计班级同学通讯录程序;要求,具有加入,删除,显示和查询功能.
最近有一个题目如上~~我编好了可是不管怎么调试就是有错误~~麻烦各位大虾指点指点啊~~谢谢了~
#include <iostream>
#include <string>
using namespace std;
class student
{ private:
int n;
string name;
int telep;
string address;
public:
void add(student &p);
void det(string nam);
void show(student &t);
void find(string nam);
string na(){return name;};
int tele(){return telep;};
string addre(){return address;};
};
void student::add(student &p);
{ n++;
cin> > p[n].na();
cin> > p[n].tele();
cin> > p[n].addre();
}
void student::det(string nam);
{for(int i=0;i <n;i++)
if(nam=stu[i].na())
{stu[i].na()= " ";
stu[i].tele()=0;
stu[i].addre()= " ";
}
}
void student::show(student &t);
{for(int i=0;i <n;i++)
{cout < <stu[i].na();
cout < <stu[i].tele();
cout < <stu[i].addre();
}
void student::find(string nam)
{for(int i=0;i <n;i++)
if(nam=stu[i].na())
{cout < <stu[i].na();
cout < <stu[i].tele();
cout < <stu[i].addre();
}
}
int main()
{student stu[100];
cout < < "please input information " < <endl;
cout < < "please intpu number " < <endl;
cin> > n;
for(int i=0;i <n;i++)
{cin> > stu[i].na();
cin> > stu[i].tele();
cin> > stu[i].addre();
}
return 0;
}
[解决办法]
类的默认访问属性为private,main()函数中的n应该定义一下吧
[解决办法]
错误不少,楼主还得加油啊,暂时挑出来一些错误。
#include <iostream>
#include <string>
using namespace std;
class student
{ private:
int n;
string name;
int telep;
string address;
public:
void add(student &p);
void det(string nam);
void show(student &t);
void find(string nam);
string na(){return name;};
int tele(){return telep;};
string addre(){return address;};
};
void student::add(student &p);//去掉;
{ n++;
cin> > p[n].na(); //不可赋值,可改为cin > > this-> n
cin> > p[n].tele();//同上
cin> > p[n].addre();//同上
}
void student::det(string nam);//去掉;
{for(int i=0;i <n;i++)
if(nam=stu[i].na())
{stu[i].na()= " ";//stu是main中定义的内容,不要这样使用
stu[i].tele()=0;//同上
stu[i].addre()= " ";//同上
}
}
void student::show(student &t);//去掉;
{for(int i=0;i <n;i++)
{cout < <stu[i].na();//不要使用stu
cout < <stu[i].tele();//同上
cout < <stu[i].addre();//同上
}
void student::find(string nam)
{for(int i=0;i <n;i++)
if(nam=stu[i].na())//同上
{cout < <stu[i].na();//同上
cout < <stu[i].tele();//同上
cout < <stu[i].addre();//同上
}
}
int main()
{student stu[100];
cout < < "please input information " < <endl;
cout < < "please intpu number " < <endl;
cin> > n;
for(int i=0;i <n;i++)
{cin> > stu[i].na();
cin> > stu[i].tele();
cin> > stu[i].addre();
}
return 0;
}
其它问题楼主慢慢挑吧