7.9
#include
using namespace std;
const int SLEN=30;
struct student{
char fullname[SLEN];
char hobby[SLEN];
int ooplevel;
};
int getinfo(student pa[],int n);
void display1(student st);
void display2(const student *ps);
void display3(const student pa[],int n);
void main79()
{
cout<<”Enter class size: “;
int class_size;
cin>>class_size;
while(cin.get()!=’\n’)
continue;
student *ptr_stu=new student[class_size];
int entered=getinfo(ptr_stu,class_size);
for(int i=0;i<entered;i++)
{
display1(ptr_stu[i]);
display2(&ptr_stu[i]);
}
display3(ptr_stu,entered);
delete ptr_stu;
cout<<”Done\n”;
system(“pause”);
}
int getinfo(student pa[],int n)
{
int count=0;
for(int i=0;i<n;i++)
{
cout<<”Please enter the fullname:”;
cin>>pa[i].fullname;
cout<<”\nPlease enter the hobby:”;
cin>>pa[i].hobby;
cout<<”\nPlease enter the ooplevel:”;
cin>>pa[i].ooplevel;
count++;
}
cout<<”\nEnter end!”;
return count;
}
void display1(student st)//按值传递
{
cout<<”\ndisplay1:FullName:”<<st.fullname<<”\nhobby:”<<st.hobby
<<”\nooplevel:”<<st.ooplevel<<endl;
}
void display2(const student *ps) //传递地址,引用
{
cout<<”\ndispaly2:FullName:”<
<<”\nooplevel:”<
}
void display3(const student pa[],int n)
{
cout<<”\ndispaly3:”<<endl;
for(int i=0;i<n;i++)
cout<<i<<”::FullName:”<<pa[i].fullname<<”\nhobby:”<<pa[i].hobby
<<”\nooplevel:”<<pa[i].ooplevel<<endl;
}
—————————————————————————————————————————————————— //写的错误或者不好的地方请多多指导,可以在下面留言或者给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。 转载请注明出处:https://www.royalchen.com/ author:royalchen Email:royalchen@royalchen.com ———————————————————————————————————————————————————
- 本文作者: royalchen
- 本文链接: http://www.royalchen.com/2016/02/24/cprimerplus第六版课后编程题答案79/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!