C++类和对象,一个问题始终无法找到错误所在?望各位高手指点

我的程序如下:
#ifndef Student_H
#define Student_H
class Student
{
private:
int reg[10];
char name[10];
double math;
double eng;
double comp;
public:
double sum();
double average();
void print();
int get_reg_num();
void set_stu_inf();
};
#endif
#include <iostream>
#include "student.h"
using namespace std;
double Student::sum()
{
return math+eng+comp;
}
double Student::average()
{
return ((math+eng+comp)/3.0);
}
void Student::print()
{
cout<<"学生个人信息:"<<endl;
cout<<" 姓 名:"<<name[10]<<endl;
cout<<" 注 册 号:"<<reg[10]<<endl;
cout<<" 数学成绩:"<<math<<endl;
cout<<" 英语成绩:"<<eng<<endl;
cout<<" 计算机成绩:"<<comp<<endl;
}
int Student::get_reg_num()
{
return reg[10];
}
void Student::set_stu_inf(int r[10],char n[10],double m,double e,double c)
{
reg[10]=r[10];
name[10]=n[10];
math=m;
eng=e;
comp=c;
}
#include <iostream>
#include "student.h"
using namespace std;
void main()
{
Student stu[100];
double s=0,max=0,e,c,m;
int i,a,r[10];
char n[10];
cout<<"请输入学生个数:"<<endl;
cin>>a;
cout<<"请依次输入学生信息(姓名、注册号、数学成绩、英语成绩、计算机成绩):"<<endl;
for (i=0;i<a;i++)
{
cin>>n[10];
cin>>r[10];
cin>>m;
cin>>e;
cin>>c;
stu[i].set_stu_inf(r[10],n[10],m,e,c);
}
cout<<"每个学生的总成绩、平均成绩如下:"<<endl;
for (i=0;i<a;i++)
{
cout<<stu[i].get_reg_num()<<": "<<stu[i].sum()<<" "<<stu[i].average()<<endl;
if (stu[i].sum()>max)
{
max=stu[i].sum();
}
s+=stu[i].average();
}
cout<<"全班的平均成绩为:"<<s/a<<endl;
cout<<"全班最高成绩为:"<<max<<endl;
cout<<"信息查询—请输入注册号:"<<endl;
while (1)
{
cin>>r[10];
for (i=0;i<a;i++)
{
if (stu[i].get_reg_num()==r[10])
{
stu[i].print();
break;
}
}
}
}
编译错误:error C2660: 'set_stu_inf' : function does not take 5 parameters
先谢过了

第1个回答  2009-11-02
void set_stu_inf();
上面是你的声明,函数体没有任何参数
下面是你的函数,却冒出来5个参数
void Student::set_stu_inf(int r[10],char n[10],double m,double e,double c)
{
reg[10]=r[10];
name[10]=n[10];
math=m;
eng=e;
comp=c;
}
第2个回答  2009-11-02
编译错误:error C2660: 'set_stu_inf' : function does not take 5 parameters

翻译:错误C2660: 'set_stu_inf' : 函数没有5个参数。
第3个回答  2009-11-02
stu[i].set_stu_inf(r[10],n[10],m,e,c);
把r[10]与n[10]改成r,n本回答被提问者采纳

C++类和对象,一个问题始终无法找到错误所在?望各位高手指点
void set_stu_inf();上面是你的声明,函数体没有任何参数 下面是你的函数,却冒出来5个参数 void Student::set_stu_inf(int r[10],char n[10],double m,double e,double c){ reg[10]=r[10];name[10]=n[10];math=m;eng=e;comp=c;} ...

我是个女孩,正在学习c++,感觉非常吃力,求助各位高手,传授经验,到底应该...
首先,你要想好为什么要学好C++?如果解决不好这个问题,你的C++不太可能学好,我学C++是为了今后能从事开发游戏的工作。只有有了明确的目标,你才会有动力。其次,学习时最好能保持自己不骄不躁,因为刚开始时,你会觉得C++很枯燥,再加上你自己说你学得很吃力,所以很容易放弃。这时静下心来,想想你...

求助各位高手看看这C++程序,我检查不出错误
首先,OJ题多行输入输出不需要你把全部结果求出再输出,可以一组输入立即接一组输出。另外,题目要输出的是"False"而不是"false"include <iostream>using namespace std;int main(){int n;int x, y;cin >> n;while( n-- ){cin >> x >> y;if( x>=10 || y>=20 )cout << "True"...

C# 使用C++写的DLL 提示无法找到入口点
Struct需要在C#里重新定义一个Struct CallBack回调函数需要封装在一个委托里,delegate static extern int FunCallBack(string str);注意在每个函数的前面加上public static extern +返回的数据类型,如果不加public ,函数默认为私有函数,调用就会出错。

VC++编译出错,错误代码:error C1189,请各位高手指点一下。
2个解决办法。1.工程-》属性-》C\/C++-》代码生成-》运行时库:修改成: 多线程调试(\/MTd); (release版本也修改成 多线程(\/MT)2.工程-》属性-》常规-》MFC的使用:修改为:在静态库中使用 MFC 方法2不一定管用,PC机上的MFC(相对于EVC而言)程序都是多线程的(不信你照2修改试试,会...

请各位C++高手帮我看一下这道简单的C++选择题.
c错了,析构函数 不能带任何参数。析构函数与 构造函数 相反,当对象脱离其 作用域 时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做“清理善后”的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。

c++编译错误
方法1:启动VC时不要用图形界面,通过在命令提示符下输入:Msdev \/useenv运行(注意啦\/前面有个空格).它会强制使系统环境变量全高设置成正确值.而且,只需要使用一次这样的方式运行VC,以后再次通过双击图标的方式启动也不会有问题。方法2:使用你的VC安装盘修复一下。方法3:在VC中点击“Tools”—>“...

...不了问题出来?到底我那儿写错了,请各位高手指教指教!!
没有#include<iostream> using namespace std;最后还少了}!!!希望采纳!!!

请教高手: C++错误 LIBCD.lib(wincrt0.obj) 1 unresolved externals...
表明你是在windows32环境下进行的编程,入口函数是winmain,而非main(main是控制台程序的),当然出错了,请确认你的编程环境和编程种类对应。你可以用同样方法测试下winmain函数。注意把那些垃圾临时文件删除掉,必要时新建一个工程。如果前面几点都做到了问题还无法解决,那就是你编译器的问题了 ...

各位大虾好!我的C++程序处理的数据很大,总是出现0xC0000005: Access Vi...
2、操作系统分配给应用程序的空间 有一部分地址空间被系统占用,应用程序无法使用,所以实际用户程序的程序空间大概是两个多GB,估摸着你什么地方还有其他的东西?所以一不小心就超过了这个上限。3、解决办法 使用磁盘的空间,对数据进行分批处理,最后把结果合并(当然是依次写入文件)。有问题直接评论即可。

相似回答
大家正在搜