标题:编译没问题。一运行就出错,不知道哪里错了。
只看楼主
菜鸡在线求问
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2018-11-29
结帖率:66.67%
已结贴  问题点数:18 回复次数:1 
编译没问题。一运行就出错,不知道哪里错了。
#include<iostream>
#include<string>
using namespace std;
class student
{  
private:
    int no;
   string name;
   double deg1,deg2,deg3;
   static double sum1;
   static  double  sum2;
   static  double  sum3;
   static  int    count;
public:

      double av1,av2,av3;
    void student1()
    { cin>>no>>name>>deg1>>deg2>>deg3;
        sum1=sum1+deg1;
        sum2=sum2+deg2;
        sum3=sum3+deg3;}
    void ave1()
    { av1=sum1/count;}
    void ave2()
    { av2=sum2/count;}
    void ave3()
    {av3=sum2/count;}
static void disp()
{  cout<<"语文成绩的平均分为:"<<sum1<<endl;
  cout<<"数学成绩的平均分为:"<<sum2<<endl;
  cout<<"英语成绩的平均分为:"<<sum3<<endl;}
 
};
double student::sum1=0;
double student::sum2=0;
double student::sum3=0;
int main()
{ int count,a;
    student A[100];
 cout<<"请输入学生数据的个数:"<<endl;
 cin>>count;
  cout<<"请输入学生信息"<<endl;
  for(a=0;a<count;a++)
  { A[a].student1();}
  A[a].ave1();
  A[a].ave2();
  A[a].ave3();
  student::disp();
  return 0;}

  错误提示:Debug/学生成绩.exe : fatal error LNK1120: 1 unresolved externals

搜索更多相关主题的帖子: void double static count student 
2019-10-19 12:57
uouo99
Rank: 2
等 级:论坛游民
威 望:3
帖 子:30
专家分:98
注 册:2019-9-30
得分:18 
兄弟,你这个程序目测问题比较多啊,可能需要加强基础学习了。
随便说几个问题吧:
1.你类里面申明了几个static变量,但是只定义了sum1,sum2,sum3,count没有定义啊,应该在double student::sum3=0;后面加一句int student::count = 0;
2.你定义了一个student的数组,有100个元素,但是却只想用你输入的cout数量的数组,感觉这种做法不是很好,count数量输入多了会出错,count数量输入少了又会浪费空间- -,你可以在得到数量之后再去创建数组嘛。


2019-10-19 20:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-497344-1-1.html




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

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