打印本文 打印本文  关闭窗口 关闭窗口  
二级模拟试题:C++习题与解析(友元-04)
作者:佚名  文章来源:不详  点击数  更新时间:2008/4/18 16:08:08  文章录入:杜斌  责任编辑:杜斌

04.有一个学生类student,包括学生姓名、成绩,设计一个友元函数,输出成绩对应的等级:大于等于90:优;80~90:良;70~79:中;60!69:及格;小于60:不及格。
解:
#include
#include
#include
class student
{
char name[10];
int deg;
char level[7];
public:
student(char na[],int d)
{
strcpy(name,na);
deg=d;
}
char *getname(){ return name;}
friend void trans(student &s)
{
if(s.deg>=90)
strcpy(s.level,"优");
else if(s.deg>=80)
strcpy(s.level,"良");
else if(s.deg>=70)
strcpy(s.level,"中");
else if(s.deg>=60)
strcpy(s.level,"及格");
else
strcpy(s.level,"不及格");
}
void disp()
{
cout<}
};
void main()
{
student st[]={student("王华",78),student("李明",92),student("张伟",62),student("孙强",88)};
cout<<"输出结果:"<cout<for(int i=0;i<4;i++) 来源:www.examda.com
{
trans(st[i]);
st[i].disp();
}
}

本程序执行结果如下:
输出结果:
姓名 成绩 等级
王华 78 中
李明 92 优
张伟 62 及格
孙强 88 良
打印本文 打印本文  关闭窗口 关闭窗口