二级模拟试题:C++习题与解析(友元-03) |
|
www.nanhushi.com 佚名 不详 |
03.有一个学生类student,包括学生姓名、成绩,设计一个友元函数,比较两个学生成绩的高低,并求出最高分和最低分的学生。 解: #include #include class student { char name[10]; int deg; public: student(char na[],int d) { strcpy(name,na); deg=d; } char *getname(){ return name;} friend int compare(student &s1,student &s2) { if(s1.deg>s2.deg) return 1; else if(s1.deg==s2.deg) return 0; else return -1; } }; void main() { student st[]={student("王华",78),student("李明",92),student("张伟",62),student("孙强",88)}; int i,min=0,max=0; 来源:www.examda.com for(i=1;i<4;i++) { if(compare(st[max],st[i])==-1) max=i; else if(compare(st[i],st[min])==1) min=i; } cout<<"输出结果:"<cout<<" 最高分:"<cout<<" 最低分:"<}
本程序的执行结果如下: 输出结果: 最高分者:李明 最低分者:张伟
|
|
|
文章录入:杜斌 责任编辑:杜斌 |
|
上一篇文章: 二级模拟试题:C++习题与解析(友元-01) 下一篇文章: 二级模拟试题:C++习题与解析(友元-02) |
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
|