| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 584 人关注过本帖
标题:一个学生信息管理的程序,选择1进入输入班级名称后面就出现错误了,但是编译 ...
只看楼主 加入收藏
筱镜尘
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2010-11-17
结帖率:66.67%
收藏
已结贴  问题点数:10 回复次数:4 
一个学生信息管理的程序,选择1进入输入班级名称后面就出现错误了,但是编译的时候又没错。劳烦哪位高手看看,谢谢!
#include<iostream.h>
#include<string.h>
class CPerson
{
private:
    char *Name;
    char *IDNo;
    char *Tel;
    char *Addr;
public:
    CPerson()
    {    }
    ~CPerson()
    {
        delete Name;
        delete IDNo;
        delete Tel;
        delete Addr;
    }
    void in_a()
    {
        char *Name1;
        char *IDNo1;
        cout<<"请输入学生的姓名:";
        cin>>Name1;
        Name=new char[strlen(Name1)+1];
        strcpy(Name,Name1);
        cout<<"请输入身份证号:";
        cin>>IDNo1;
        IDNo=new char[strlen(IDNo1)+1];
        strcpy(IDNo,IDNo1);
    }
    void in()
    {
        char *Tel1;
        char *Addr1;
        cout<<"请输入电话号码:";
        cin>>Tel1;
        Tel=new char[strlen(Tel1)+1];
        strcpy(Tel,Tel1);
        cout<<"请输入地址:";
        cin>>Addr1;
        Addr=new char[strlen(Addr1)+1];
        strcpy(Addr,Addr1);   
    }
    void show()
    {
        cout<<"    姓名"<<"    身份证号"<<"    电话"<<"    地址";
        cin>>"    Name">>"    IDNo">>"    Tel">>"    Addr";
    }
};
class CStudent:public CPerson
{
private:
    char *StudNo;
    float Math;
    float English;
    float Average;
public:
    CStudent()
    {    }
    ~CStudent()
    {
        delete StudNo;
    }
    void in_a()
    {
        char *StudNo1;
        CPerson::in_a();
        cout<<"请输入学号:";
        cin>>StudNo1;
        StudNo=new char[strlen(StudNo1)+1];
        strcpy(StudNo,StudNo1);
    }
    void in()
    {
        float Math1;
        float English1;
        float Average1;
        CPerson::in();
        cout<<"请输入数学成绩:";
        cin>>Math1;
        cout<<"请输入英语成绩:";
        cin>>English1;
        Math=Math1;
        English=English1;
        Average1=(Math1+English1)/2;
        Average=Average1;
    }
    void show()
    {
        CPerson::show();
        cout<<"    学号"<<"    数学"<<"    英语"<<"    平均分";
        cin>>"    StudNo">>"    Math">>"    English">>"    Average";
    }
};
class CClass
{
private:
    CStudent *p[50];
    char ClassName;
    int i;
public:
    CClass()
    {}
    ~CClass()
    {}
    void in_a()
    {
        cout<<"请输入班级的名称:";
        cin>>ClassName;
        p[i]->in_a();
        p[i]->in();
    }
    void Insert()
    {
        int x=1;
        p[i]=NULL;
        while(x==1)
        {
            p[i]->in_a();
            p[i]->in();
            cout<<"是否继续输入,是请按1";
            cin>>x;
            i++;
        }
    }
    void Add()
    {
        Insert();
    }
    void Updata()
    {
        char *num,*StudNo1;
        Print();
        cout<<"请输入你要修改的学生的学号:";
        cin>>num;
        if(strcmp(StudNo1,num)==0)
        {
            cout<<"请输入你要修改的学生的数据:";
            p[i]->in();
            p[i]->show();
        }
    }
    void Print()
    {
        p[i]->show();
    }
};
void Interface()
{
    cout<<"**************欢迎进入学生信息管理系统********************";
    cout<<"                                                 "<<endl;
    cout<<"         ☆☆☆☆☆☆ののののの☆☆☆☆☆☆              "<<endl;
    cout<<"                                                 "<<endl;
    cout<<"       1----创建班级           2----添加学生信息        "<<endl;
    cout<<"       3----修改学生信息       4----删除学生信息        "<<endl;
    cout<<"       5----打印学生信息       6----退出                "<<endl;
    cout<<"                                                 "<<endl;
   
}
void main()
{
    int a,flag=1;
    char d;
    char *Name,*IDNo,*Tel,*Addr,*StudNo;
    float Math,English;
    CClass obj;
    while(flag)
    {
        Interface();
        cout<<"       请输入你的选择:";
        cin>>a;
        switch(a)
        {
        case 1: obj.in_a();obj.Insert();break;
        case 2: obj.Add();break;
        case 3: obj.Updata();break;
        //case 4: obj.Delete();break;
        case 5: obj.Print();break;
        //case 6: exit().\;break;
        }
        cout<<"是否继续,继续请按Y或y";
        cin>>d;
        if(d=='n'||d=='N')
               flag=0;
    }
}
搜索更多相关主题的帖子: 学生 身份证号 姓名 
2011-01-05 21:30
vandychan
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
等 级:贵宾
威 望:18
帖 子:2296
专家分:6418
注 册:2010-8-20
收藏
得分:5 
是什么问题??

到底是“出来混迟早要还”还是“杀人放火金腰带”?
2011-01-05 23:57
筱镜尘
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2010-11-17
收藏
得分:0 
这是一个学生信息管理系统,当我选择1进入输入班级名称后就说网页有错误,然后就执行不下去了,我也看不出哪里有问题。
2011-01-06 09:07
筱镜尘
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2010-11-17
收藏
得分:0 
回复 2楼 vandychan
这是一个学生信息管理系统,当我选择1进入输入班级名称后就说网页有错误,然后就执行不下去了,我也看不出哪里有问题。
图片附件: 游客没有浏览图片的权限,请 登录注册
就是出现这个
2011-01-06 09:15
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:5 
怀疑是指针指到了意外的区域
2011-01-06 17:59
快速回复:一个学生信息管理的程序,选择1进入输入班级名称后面就出现错误了,但 ...
数据加载中...
 
   



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

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