| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 428 人关注过本帖
标题:新手问个弱弱问题 程序设计课 急
只看楼主 加入收藏
lgqst
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-5-23
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
新手问个弱弱问题 程序设计课 急
#include <fstream.h>
#include <string.h>
#define N 2
#define M 61
class Student
{
public:
    char name[20];
    char id[10];
    int num;
    int day;
    int money;
public:
    void setname(char * n)
    {
        strcpy(name,n);
    }
    char * getname()
    {
        return name;
    }
    void setid(char * i)
    {
        strcpy(id,i);
    }
    char * getid()
    {
        return id;
    }
    void setnum(int n)
    {
        num=n;
    }
    int getnum()
    {
        return num;
    }
    void setday(int d)
    {
        day=d;
    }
    int getday()
    {
        return day;
    }
    void setmoney(int mo)
    {
        money=mo;
    }
    int getmoney()
    {
        return money;
    }
};
int t=60;
class Class: public Student
{
public:
    ofstream fout;
    void in(Class th[])
    {
        char name[20];
        char id[10];
        int num;
        int day;
        int money;
        cout<<"* 请 输 入 商 品 名 :";
        cin>>name;
        th[t].setname(name);
        cout<<"* 请 输 入 商 品 编 号 :";
        cin>>id;
        th[t].setid(id);
        cout<<"* 请 输 入 商品数量 :";
        cin>>num;
        th[t].setnum(num);
        cout<<"* 请 输 入 商品保质期 :";
        cin>>day;
        th[t].setday(day);
        cout<<"* 请 输 入 商品价格 :";
        cin>>money;
        th[t].setmoney(money);
        t--;
    }
    void cout1()
    {
        cout<<"* 名 字 :"<<name<<" 编 号:"<<id<<" 数量:"<<num<<" 保质期:"<<day<<" 价格"<<money<<endl;
    }
    void search(Class th[])
    {
        char id[10];
        int i,j=0;
        int m=0;
        cout<<"* 请 输 入 编号 :";
        while(1)
        {
            cin>>id;
            for(i=0;i<M;i++)
            {
                if(strcmp(th[i].id,id)==0)
                {
                    m=1;
                }
            }
            if(m==0)
            {
                cout<<"* 输 入 编号 有 误 ,请 重 新 输 入 :";
            }
            else
            {
                break;
            }
        }
        for(i=1;i<=M;i++)
        {
            if(strcmp(th[i-1].id,id)==0)
            {
                th[i-1].cout1();
            }
        }
    }
    void remove(Class th[])
    {
        char id[10];
        int i,m=0;
        cout<<"* 请 输 入 要 删 除 的 编号:";
        while(1)
        {
            cin>>id;
            for(i=0;i<M;i++)
            {
                if(strcmp(th[i].id,id)==0)
                {
                    m=1;
                }
            }
            if(m==0)
            {
                cout<<"* 输 入 编号 有 误 ,请 重 新 输 入 :";
            }
            else
            {
                break;
            }
        }
        for(i=1;i<=M;i++)
        {
            if(strcmp(th[i-1].id,id)==0)
            {
                strcpy(th[i-1].id,"xxx");
                cout<<" 已 删 除 "<<endl;
            }
        }
        
    }
void print(Class th[])
{
    int i=60;
    for(i=60;i>0;i--)
    {
        if(strcmp(th[i].id,"xxx"))
        {
               th[i].cout1();
        }
        else
        continue;            
    }
}
    void rework(Class th[])
    {
    char name[20];
    char id[10];
    int num;
    int day;
    int money;
        int i,h,m=0;
        cout<<"*  请 输 入 要 修 改 的 学 号 :";
        while(1)
        {
            cin>>id;
            for(i=0;i<M;i++)
            {
                if(strcmp(th[i].id,id)==0)
                {
                    m=1;
                }
            }
            if(m==0)
            {
                cout<<"* 输 入 学 号 有 误 ,请 重 新 输 入 :";
            }
            else
            {
                break;
            }
        }
        for(i=0;i<M;i++)
        {
            if(strcmp(th[i].id,id)==0)
            {
                h=i;
                cout<<"* 请 输 入 要 修 改 的 信 息 :"<<endl;
                cout<<"*                      名称 :";
                cin>>name;
                cout<<"*                      编号:";
                cin>>id;
                cout<<"*                      数量 :";
                cin>>num;
                cout<<"保质期";
                cin>>day;
                cout<<"价格";
                cin>>money;
            }
        }
        strcpy(th[h].name,name);
        strcpy(th[h].id,id);
        th[h].num=num;
        th[h].day=day;
        th[h].money=money;
    }
};
void main()
{
    Class th[M],a;
    int x,i,j;
    char name[20];
    char id[10];
    int num;
    int day;
    int money;
    ifstream fin("output.txt");
    for(i=0;i<10;i++)
    {
        fin>>name;fin>>id;fin>>num;fin>>day;fin>>money;
        th[i].setname(name);
        th[i].setid(id);
        th[i].setnum(num);
        th[i].setday(day);
        th[i].setmoney(money);
    }
    cout<<"* * * * * * * * * * * * * *   欢 迎 使 用 本 程 序  * * * * * * * * * * * * *  *"<<endl;
    while(1)
    {
        cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *"<<endl;
        cout<<"*                   |        ①————————添加       |                    *"<<endl;
        cout<<"*                   |        ②————————查询       |                    *"<<endl;
        cout<<"*                   |        ③————————删除       |                    *"<<endl;
        cout<<"*                   |        ⑥————————显示       |                    *"<<endl;
        cout<<"*                   |        ⑦————————修改       |                    *"<<endl;
        cout<<"*                   |        ⑧————————退出       |                    *"<<endl;
        cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *"<<endl;
        cout<<"* 请 选 择 操 作 条 目 :";
        cin>>x;
        if(x==1)
        {
            a.in(th);
        }
        if(x==2)
        {
            a.search(th);
        }
        if(x==3)
        {
            a.remove(th);
        }
        if(x==6)
        {
            a.print(th);
        }
        if(x==7)
        {
            a.rework(th);
        }
        if(x==8)
        {
            break;
        }
    }

}由于文盲指针没教,只能用数组做一个简单的仓库管理系统
但是现在调用“显示”后好多烫,帮忙一下小弟!谢谢各位
搜索更多相关主题的帖子: 程序设计 
2010-05-23 00:15
神左手
Rank: 2
等 级:论坛游民
帖 子:46
专家分:62
注 册:2010-4-24
收藏
得分:20 
void setname(char * n)
    {
        strcpy(name,n);
    }
要进行动态内存申请
后面的界面的功能的实现用while循环
2010-05-23 10:36
lgqst
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2010-5-23
收藏
得分:0 
回复 2楼 神左手
能帮我改一下么?
谢谢
2010-05-23 10:40
快速回复:新手问个弱弱问题 程序设计课 急
数据加载中...
 
   



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

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