| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1081 人关注过本帖
标题:结果编译出问题。。。我不知道怎么改
只看楼主 加入收藏
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:20 
结果编译出问题。。。我不知道怎么改
程序代码:
#include <iostream>
using namespace std;
class student
{
public:
    student(int n,string nam,float s):num(n),name(nam),score(s){}
private:
    int a[5];
    char num;
    string name;
  float score;
  void set()
  {student  a[5];
    int i,j=0,k=0;
    cout<<"请输入学生1的学号:";
    cin>>a[0].num;
    cout<<"请输入学生1的姓名:";
    cin>>a[0].name;
    cout<<"请输入学生1的成绩:";
    cin>>a[0].score;}

 int main()
{ double sun=a[0].score,max=a[0].score,min=a[0].score;
    for(i=1;i<N;i++)
    {  cout<<"请输入学生"<<i+1<<"的学号:";
       cin>>a[i].num;
       cout<<"请输入学生"<<i+1<<"的姓名:";
       cin>>a[i].name;
       cout<<"请输入学生"<<i+1<<"的成绩:";
       cin>>a[i].score;
       sum+=a[i].score;
       if(a[i].score>max)
       {
           max=a[i].score;
           j=i;
       }
       if(a[i].score<min)
       {
           min=a[i].score;
           k=i;
       }
    }
    cout<<"平均分:"<<"ave="<<sum/3<<endl;
    cout<<"最高分学号:"<<a[j].num<<"最高分姓名:"<<a[j].name<<"最高分分数:"<<a[j].score<<endl;
    cout<<"最高分学号:"<<a[k].num<<"最低分姓名:"<<a[k].name<<"最低分分数:"<<a[k].score<<endl;
    return 0;
}
搜索更多相关主题的帖子: color 
2013-12-13 00:46
pangshch
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:2
帖 子:443
专家分:1966
注 册:2013-4-9
收藏
得分:0 
类没有用大括号结束
构造函数有参数, 你后面定义的对象没有参数.
2013-12-13 08:07
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
收藏
得分:0 
回复 2楼 pangshch
具体呢?怎么改
2013-12-13 08:34
yangood
Rank: 2
等 级:论坛游民
帖 子:11
专家分:18
注 册:2013-11-1
收藏
得分:0 
int  main()主函数前加大括号“}”。你的构造函数赋值跑到set成员函数里了。手里没有C++编辑工具,运行结果是什么样子的?
2013-12-13 09:12
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
我都不知道你main里面的a是哪来的
还有for里面的i哪来的?N哪来的?

这是怎么拼凑出来的代码...

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-12-13 09:19
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
收藏
得分:0 
回复 4楼 yangood
我试过不行啊
2013-12-13 09:26
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
收藏
得分:0 
程序代码:
#include <iostream>
using namespace std;
class Student
{public:
Student(int n,int a,float s):num(n),name(a),score(s){}
void total();
static float average();
private:
    int num;
    int name;
    float score;
    static float sum;
    static int count;
};
void Student::total()
{sum+=score;
count++;
}
float Student::average()
{return(sum/count);
}
float Student::sum=0;
int Student::count=0;
int main()
{Student stud[3]={
Student(0063,01,59),
Student(0064,02,99),
Student(0065,03,60)
};
int n;
cout<<"please input the number of students:";
cin>>n;
for(int i=0;i<n;i++)
stud[i].total();
cout<<"the average score of"<<n<<"students is"<<Student::average()<<endl;

int main()
{
    int i,max;
    int j[3]={59,99,60};
    max=j[0];
    for(i=0;i<=3;i++)
    if(j[i]>max)
    {max=j[i];
    }
cout<<"max="<<max<<endl;
return 0;
}

int main()
{
    int i,min;
    int j[3]={59,99,60};
    min=j[0];
    for(i=0;i<=3;i++)
    if(j[i]<min)
    {min=j[i];
    }
cout<<"min="<<min<<endl;
return 0;
}
可是出错。。不知道怎么改,帮忙。。
2013-12-13 12:48
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:0 
回复 7楼 hujihong520
为什么两个main...

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-12-13 13:03
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
收藏
得分:0 
回复 8楼 peach5460
程序代码:
#include <iostream>
using namespace std;
class Student
{public:
Student(int n,int a,float s):num(n),name(a),score(s){}
void total();
static float average();
private:
    int num;
    int name;
    float score;
    static float sum;
    static int count;
};
void Student::total()
{sum+=score;
count++;
}
float Student::average()
{return(sum/count);
}
float Student::sum=0;
int Student::count=0;
int main()
{Student stud[3]={
Student(0063,01,59),
Student(0064,02,99),
Student(0065,03,60)
};
int n;
for(int i=0;i<n;i++)
stud[i].total();
cout<<"the average score of"<<n<<"students is"<<Student::average()<<endl;
{    int i,max=0,min=0;
    int j[3]={59,99,60};
    max=j[0];
    for(i=0;i<=3;i++)
    if(j[i]>max)
    {max=j[i];
}cout<<"max="<<max<<endl;

 min=j[0];
    for(i=0;i<=3;i++)
    if(j[i]<min)
    {min=j[i];
}cout<<"min="<<min<<endl;
}
return 0;
}
我改过,可是平均分有问题,不知道改哪个
2013-12-13 13:07
hujihong520
Rank: 1
来 自:南京
等 级:新手上路
帖 子:23
专家分:0
注 册:2013-9-7
收藏
得分:0 
回复 8楼 peach5460
急急急。。。拜托。。。
2013-12-13 13:09
快速回复:结果编译出问题。。。我不知道怎么改
数据加载中...
 
   



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

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