| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4248 人关注过本帖
标题:功能:用链表实现一个学生成绩管理系统。
只看楼主 加入收藏
炽天使禹
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-3-26
结帖率:0
收藏
已结贴  问题点数:10 回复次数:13 
功能:用链表实现一个学生成绩管理系统。
功能:用链表实现一个学生成绩管理系统。

定义一个学生类,有姓名、学号、性别、四门功课(Math English C Computer)和平均分等私有数据成员;学生人数及学生信息由键盘输入,求出每个学生的平均分;打印每个学生的姓名、学号、四门课成绩和平均分。

要求:
1.用对象指针实现(即链表);
2.用构造函数实现学生信息的输入;
3.平均分的计算要用一个单独的函数实现;
4.请严格按照下面的格式进行输入输出。


输入/输出样式:
Please Input the Number of Students:
3
Please input 3 student info: Name  ID  Sex  Math  English  C  Computer
wang 1 f 80 80 80 80
zhang 2 m 85 85 85 85
liang 3 m 75 75 75 75

Student Information:
Name  ID  Sex  Math  English  C  Computer  Average
wang  1  f  80  80  80  80  80
zhang  2  m  85  85  85  85  85
liang  3  m  75  75  75  75  75
搜索更多相关主题的帖子: 管理系统 信息 English 
2012-04-06 21:18
fenghelong
Rank: 3Rank: 3
来 自:上海
等 级:论坛游侠
威 望:2
帖 子:209
专家分:197
注 册:2011-8-18
收藏
得分:2 
回复 楼主 炽天使禹
用STL实现可以么?
2012-04-07 00:41
CooperOne
Rank: 2
来 自:珠海
等 级:论坛游民
帖 子:40
专家分:48
注 册:2012-1-25
收藏
得分:2 
以下是引用fenghelong在2012-4-7 00:41:08的发言:

用STL实现可以么?
+1


忍不住用stl啊!!!!!

蹲得越低,跳得越高.
2012-04-07 02:11
炽天使禹
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-3-26
收藏
得分:0 
呵呵,貌似不可以因为我们还没学stl呢!只能麻烦各位高手用链表了!
2012-04-07 08:57
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:2 
程序代码:
#include <iostream>
#include <string>
using namespace std;
struct CNode
{
    string m_Name;
    string m_No;
    string m_Sex;
    double m_Mat;
    double m_Eng;
    double m_Clg;
    double m_Cop;
//    double m_Avg;
    CNode *m_Next;
    CNode(string nName, string nNo, string nSex,
        double nMat, double nEng, double nClg,
        double nCop, CNode*nNext=NULL)
    {
        m_Name = nName, m_No = nNo ,m_Sex = nSex;
        m_Mat = nMat, m_Eng = nEng, m_Clg = nClg, m_Cop = nCop;
        m_Next = nNext;
    }
    CNode(CNode*nNext=NULL)
    {
        m_Mat = m_Eng = m_Clg = m_Cop = 0;
        cin >> m_Name >> m_No >> m_Sex;
        cin >> m_Mat >> m_Eng >> m_Clg >> m_Cop;
        m_Next = nNext;
    }
    double Avg()const
    {
        return (m_Mat+m_Eng+m_Clg+m_Cop)/4.0;
    }
    bool operator == (const CNode &nNode)const
    {
        return (nNode.m_Clg == m_Clg &&
            nNode.m_Cop == m_Cop &&
            nNode.m_Eng == m_Eng &&
            nNode.m_Mat == m_Mat &&
            nNode.m_Name == m_Name &&
            nNode.m_No == m_No &&
            nNode.m_Sex == nNode.m_Sex);
    }
    bool operator < (const CNode &nNode)const
    {
        return false;
    }
    bool operator > (const CNode &nNode)const
    {
        return false;
    }
    bool operator != (const CNode &nNode)const
    {
        return !((*this) == nNode);
    }
};

template <class T>
class CList
{
public:
    CList(T *nHead=NULL):m_Head(nHead){}
    ~CList(void){}
    int AddNode(T *nNode);//
    int DelNode(T *nNode);//
    int ChgNode(T *nNode);//
    int SrhNode(T *nNode)const;//

    bool Empty()const;//是否为空
    void Print()const;//打印
    int Sort();//
    int Destroy();//销毁

private:
    T *m_Head;
};

template <class T>
int CList<T>::AddNode(T *nNode)
{
    return EXIT_SUCCESS;
}

template <class T>
int CList<T>::DelNode(T *nNode)
{
    return EXIT_SUCCESS;
}

template <class T>
int CList<T>::ChgNode(T *nNode)
{
    return EXIT_SUCCESS;
}

template <class T>
int CList<T>::SrhNode(T *nNode)const
{
    return EXIT_SUCCESS;
}

template <class T>
bool CList<T>::Empty()const
{
    return (NULL == m_Head);
}

template <class T>
void CList<T>::Print()const
{
    return;
}

template <class T>
int CList<T>::Sort()
{
    return EXIT_SUCCESS;
}

template <class T>
int CList<T>::Destroy()
{
    return EXIT_SUCCESS;
}

int main()
{
    CList<CNode> list;

    return 0;
}
2012-04-07 10:06
炽天使禹
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-3-26
收藏
得分:0 
好长啊!可否讲解一下!
2012-04-07 15:11
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:2 
你要结果,版主给你了。。又想要解释。。。。
偶很无语。

我们都在路上。。。。。
2012-04-07 15:18
炽天使禹
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-3-26
收藏
得分:0 
回复 5楼 寒风中的细雨
运行后和例子不同啊
2012-04-07 17:02
炽天使禹
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2012-3-26
收藏
得分:0 
#include<iostream>
using namespace std;
#include "string.h"
class Student
{
private:
    char *name;
    int  id;   
    char gender;   
    int  score_math;
    int  score_english;
    int  score_C;
    int  score_Computer;
    double  score_avg;   

public:
    Student(){}

    void Init()
    {
        name=new char[20];
        cin>>name>>id>>gender>>score_math>>score_english>>score_C>>score_Computer;
    }

    void SetAverageScore()
    {
        score_avg = (score_math + score_english + score_C + score_Computer) / 4.0;
    }

    void Display()
    {
        cout<<name<<"  "<<id<<"  "<<gender<<"  "<<score_math<<"  "<<score_english<<"  "<<score_C<<"  "<<score_Computer<<"  "<<score_avg<<endl;
    }
};

main(char **argv, int args)
{
    int MAX;
    cout<<"Please Input the Number of Students:"<<endl;
    cin>>MAX;
    Student *stu;
    stu=new Student[MAX];
    int i;
    cout<<"Please input "<<MAX<<" student info: Name  ID  Sex  Math  English  C  Computer"<<endl;
    for(i=0; i<MAX; i++)
    {
        stu[i].Init();
        stu[i].SetAverageScore();
    }

    cout<<endl<<"Student Information you input:"<<endl;
    cout<<"Name  ID  Sex  Math  English  C  Computer  Average"<<endl;
    for(i=0; i<MAX; i++)
    {
        stu[i].Display();
    }
    return 0;
}
这是我编的但不知道用链表怎么改希望各位能帮忙改改!
2012-04-07 17:03
寒风中的细雨
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:66
帖 子:1710
专家分:8645
注 册:2009-9-15
收藏
得分:0 
只是 写了下基本的思路  要效果 还得你自己填充代码才行啊
2012-04-07 18:46
快速回复:功能:用链表实现一个学生成绩管理系统。
数据加载中...
 
   



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

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