» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


发新话题
打印

【编程相关】CPP的问题……求大伙帮忙……

class studentArray
{
     public:
     class student
     {
          int studentID;
          CString studentName;
          double StudentHeight;//身高
           
      }
     void addStudent(int studentID, CString studentName, double studentHeight)
     {
        m_studentArray.push_back(new student(studentID, studentName, studentHeight))
     }
     double averageHeight()
     {
        std::vector<student*>::iterator it = m_studentArray.begin();
        double sum = 0.0;
        for(;it != m_studentArray.end(); ++it)
        {
          sum+= it->studentHeight;
        }
        return ( sum / double(m_studentArray.size()));
     }
private:
std::vector<studentArray*> m_student;
}

//使用方式
studentArray students;
students.add(1001, "yang", 180);
students.add(1002, "zhang", 172);
double averHeight = students.averageHeight();

至于方差 公式忘了 基本也是不难求的

至于画曲线 我不太明白楼主想要的是哪种 可以很复杂 可以很简单
一种最简单的思路是 求students中最高 和 最低 的差值作为 竖坐标
学生的个数做为横坐标 并以一定的粒度统计 一定数量的人 的 一定身高
举个最简单的例子 就是每个人都是曲线上一点 横坐标就是1个人竖坐标是该人身高


本帖最近评分记录
  • shixn 激骚 +8 我很赞同 2010-7-5 23:16

TOP

补充一下:
vector只适合存放指针 而不是结构或者对象 性能很差

楼主在析构时需要手动删除没一个学生对象~



TOP

回ls 我说的是vector直接存取对象的性能, vector存取每一个对象都会调用对象的拷贝构造函数 我并没有搬出溢出之类的。。请ls不用动肝火。。


TOP

发新话题
     
官方公众号及微博