| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 698 人关注过本帖
标题:[求助]大家看看这个程序怎么改一下
只看楼主 加入收藏
macymacy
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-10-10
收藏
 问题点数:0 回复次数:9 
[求助]大家看看这个程序怎么改一下

定义一个类,输入若干名学生的学号、姓名和成绩,然后显示这些数据并计算出平均分。并设计出相应的程序测试类的功能。
class student
{
private:
char name[10];
char num[10];
float score;
public:
void setdata();
void show();
};
#include"iostream.h"
#include"student.h"
void student::setdata()
{
cin>>name;
cin>>num;
cin>>score;
}
void student::show()
{

cout<<name<<" ";cout<<num<<" ";cout<<score<<endl;
}

void main()
{
student stu1,stu2,stu3;
student*p;
p=&stu1;
stu1.setdata();
stu2.setdata();
stu3.setdata();
cout<<"name: ";cout<<"num: ";cout<<"score: "<<endl;
stu1.show();
stu2.show();
stu3.show();

}
我是初学者,这是我做的程序,不过还缺少计算平均分的部分,大家帮忙看看怎样定义添加计算平均分的函数

搜索更多相关主题的帖子: void student score 
2006-10-24 12:38
wangxiang
Rank: 2
等 级:新手上路
威 望:5
帖 子:376
专家分:0
注 册:2006-3-28
收藏
得分:0 
是统计stu1,stu2,stu3,的平均分吗?
如果是的话
你可以再类里,添加个long Score(){ return score; }
后在main()里面,float aver = stu1.Score()+stu2.Score()+stu3.Score()/3

2006-10-24 13:11
werewolf007
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-10-24
收藏
得分:0 
你这个程序最多只能输入三个学生的成绩并计算平均分
如果要输入若干个学生的成绩的话,建议用对象数组

2006-10-24 19:59
werewolf007
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-10-24
收藏
得分:0 
如果不需要的话
我觉得可直接在main()中定义变量aver
aver =(stu1.score+stu2.score+stu3.score)/3

2006-10-24 20:03
hnzzc
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2006-4-26
收藏
得分:0 
以下是引用werewolf007在2006-10-24 20:03:52的发言:
如果不需要的话
我觉得可直接在main()中定义变量aver
aver =(stu1.score+stu2.score+stu3.score)/3

score是私有成员,类对象不能访问,aver =(stu1.score+stu2.score+stu3.score)/3
是错误的

2006-10-25 15:06
maoguoqing
Rank: 6Rank: 6
来 自:重庆
等 级:贵宾
威 望:28
帖 子:2980
专家分:19
注 册:2005-12-5
收藏
得分:0 
2楼正解。4楼注意score是私有成员。。

天行健,君子以自强不息!!QQ:68660681
2006-10-25 18:48
编程新贵
Rank: 1
等 级:新手上路
帖 子:98
专家分:0
注 册:2006-8-11
收藏
得分:0 

帮你的代码稍微改了下:
class student
{
private:
char name[10];
char num[10];
float score;
public:

void setdata();
void show();
float avg(){return score;}
};
#include"iostream.h"
//#include"student.h"
void student::setdata()
{ cout<<"姓名:";
cin>>name;
cout<<"ID:";
cin>>num;
cout<<"分数:";
cin>>score;
}
void student::show()
{

cout<<name<<" ";cout<<num<<" ";cout<<score<<endl;
}


void main()
{
student stu1,stu2,stu3;
float c;
//student*p;
// p=&stu1;
stu1.setdata();
stu2.setdata();
stu3.setdata();
cout<<"name: ";cout<<"num: ";cout<<"score: "<<endl;
stu1.show();
stu2.show();
stu3.show();
c=((stu1.avg()+stu2.avg()+stu3.avg()))/3;
cout<<"平均分是"<<c<<endl;
}

2006-10-25 20:09
song4
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:38
帖 子:1533
专家分:4
注 册:2006-3-25
收藏
得分:0 

while(1)
{char p;
cin>>
if(p=='y'||p=='Y')
{
student temp=new student;
...............
}
else{break;}
}


嵌入式 ARM 单片机 驱动 RT操作系统 J2ME LINUX  Symbian C C++ 数据结构 JAVA Oracle 设计模式 软件工程 JSP
2006-10-25 21:37
lele2426
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-10-26
收藏
得分:0 
7楼的很不错。顶一个

努力学习C++
2006-10-27 22:56
zxyliwei
Rank: 1
等 级:新手上路
帖 子:88
专家分:0
注 册:2005-12-6
收藏
得分:0 

你那个指针用来干什么的阿?


醒逍遥;醉也逍遥!
2006-11-06 16:27
快速回复:[求助]大家看看这个程序怎么改一下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020151 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved