ITPUB论坛 » 算法讨论与研究 » 一个C++编程问题
新一届的微软MVP评选已经开始,欢迎各位推荐!
2007-12-21 11:00 oytommy
一个C++编程问题

我写了个人员管理系统的简单的程序
但是出现点问题我自己没办法解决
希望大家可以帮我看看
这个程序现在不能实现的是修改功能
不知道怎么改,系统不报错
而且经常数据溢出,帮帮忙
我很急,这个程序写了好几天了到现在没弄明白,下个星期就交作业了
#include<iostream.h>
#include<string.h>
#include<fstream.h>
class employee
{
protected:
    char name[20];
    int num;
    char zhiwei[20];
    char bumen[20];
    int worktime;
    int pay;
public:
       employee()
           {
           }
       employee(char n[20],int no,char zw[20],char bm[20],int wt,int mp)
           {
       strcpy(name,n);
       num=no;
       strcpy(zhiwei,zw);
       strcpy(bumen,bm);
       worktime=wt;
       pay=mp;
           }
friend void main();
};

void main()
{
   cout<<"请选择您需要的操作!"<<endl;
   cout<<"操作:"<<endl;
   cout<<"(1)数据录入"<<endl;  
   cout<<"(2)删除人员"<<endl;
   cout<<"(3)修改数据"<<endl;
   cout<<"查询:"<<endl;
   cout<<"(4)按编号查询"<<endl;
   cout<<"(5)按姓名查询"<<endl;
   cout<<"(6)输出所有人员数据"<<endl;  
   cout<<"*****************************"<<endl;

   char p;char w;
   employee *s[300];
   ofstream *file[400];
   int i=0;
   int j=0;
   bool flag2=0;
   do
   {
      cin>>p;
      if(p>='0'&&p<='6')
      flag2=1;
      else
      cout<<"错误!不是内部函数!"<<endl;
   }
   while(flag2==0);
   do{
       switch(p)
           {
       case '1':
                   {
              char c;
              char name[20];
              int num;
              char zhiwei[20];
              char bumen[20];
              int worktime;
              int pay;
                 do{
                     cout<<"姓名:"<<endl;
                          cin>>name;
                     cout<<"编号:"<<endl;
                          cin>>num;
                     cout<<"职位:"<<endl;
                          cin>>zhiwei;
                     cout<<"部门:"<<endl;
                          cin>>bumen;
                     cout<<"工龄:"<<endl;
                          cin>>worktime;
                     cout<<"年薪:"<<endl;
                          cin>>pay;
                  file[j]=new ofstream("e:\\ouyang_file",ios::ate);
                  *file[j]<<"姓名"<<name<<"编号"<<num<<"职位"<<zhiwei<<"部门"<<bumen<<"工龄:"<<worktime<<"年薪"<<pay<<endl;
                           j++;
                    s[i]=new employee(name,num,zhiwei,bumen,worktime,pay);
                           i++;
                     cout<<"数据录入成功,继续?(y/n)"<<endl;
                          cin>>c;
                      flag2=0;
                               do
                                                           {
                                    if(c!='y'&&c!='n')
                                                                        {
                                       cout<<"错误!不是内部函数!"<<endl;
                                            cin>>c;
                                                                        }
                                    else
                                         flag2=1;
                                                           }while(flag2==0);
                                 }while(c=='y');
           break;
                   }

                      case '4':
                                                  {
                            int no;
                            int j=0;
                            char c;
                            do {
                              int flag1=0;
                               cout<<"您要查询的员工编号是:"<<endl;
                                   cin>>no;
                              for(int j=0;j<i;j++)
                                                          {
                              if((no,(*s[j]).num)==0)
                                                          {
                               flag1=1;
                               cout<<"您要查询的员工是:"<<(*s[j]).num<<endl;
                               cout<<(*s[j]).name<<"编号"<<(*s[j]).num<<"职位:"<<(*s[j]).zhiwei<<"部门:"<<(*s[j]).bumen<<"工龄:"<<(*s[j]).worktime<<"年薪:"<<(*s[j]).pay<<endl;
                                                          }
                                                          }
                              if(flag1==0)
                                 cout<<"对不起!您要查询的资料不存在!"<<endl;
                                 cout<<"您想继续查询吗?(y/n)"<<endl;
                                     cin>>c;
                              if(c!='y'&&c!='n')
                                                          {
                              cout<<"错误!不是内部函数!"<<endl;
                                   cin>>c;
                                                          }
                                                        }
                        while(c=='y');
                           break;
                                                  }

              case '5':
                                  {
                   char n[20];
                   int j=0;
                   char c;
                   do
                                   {
                   int flag=0;
                    cout<<"您要查询的员工姓名是:"<<endl;
                         cin>>n;
                    for(int j=0;j<i;j++)
                                        {
                   if(strcmp(n,(*s[j]).name)==0)
                                   {
                    flag=1;
                      cout<<"您要查询的员工是:"<<(*s[j]).name<<endl;
                      cout<<(*s[j]).name<<"编号"<<(*s[j]).num<<"职位:"<<(*s[j]).zhiwei<<"部门:"<<(*s[j]).bumen<<"工龄:"<<(*s[j]).worktime<<"年薪:"<<(*s[j]).pay<<endl;
                                        }
                                        }
                    if(flag==0)
                    cout<<"对不起!您要查询的资料不存在!"<<endl;
                    cout<<"您想继续查询吗?(y/n)"<<endl;
                        cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                      cout<<"错误!不是内部函数!"<<endl;
                            cin>>c;
                                        }
                                   }
                    while(c=='y');
                  break;
                                  }

             case '2':
                                 {
                   char name[20];
                   bool flag3=0;
                   char c;
                   do
                                   {
                     cout<<"请输入要删除的员工姓名:"<<endl;
                         cin>>name;
                    for(int h=0;h<i;h++)
                                        {
                      if(strcmp(name,s[h]->name)==0)
                                          {
                        flag3=0;
                            i--;
                             do{
                                 s[h]=s[h+1];
                                         h++;
                                                         }while(h<=i);
                                          }
                                        }
                    if(flag3==1)
                     cout<<"删除对象不存在!请查证后输入!";
                     cout<<"继续?(y/n)"<<endl;
                         cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                     cout<<"错误!不是内部函数!"<<endl;
                         cin>>c;
                                        }
                                   }while(c=='y');
                     break;
                                 }

              case '3':
                                  {
                   char name[20];
                   int not;
                   char zhiweit[20];
                   char bument[20];
                   int payt;
                   int worktimet;
                   flag2=0;
                   char c;
                   do
                                   {
                     cout<<"请输入您要修改的员工姓名:"<<endl;
                         cin>>name;
                     for(int j=0;j<i;j++)   
                                         {
                     if(strcmp(name,s[j]->name)==0)   
                                         {
                      flag2=1;
                       cout<<"请输入新的编号:"<<endl;
                            cin>>not;
                       cout<<"请输入新的职位:"<<endl;
                            cin>>zhiweit;
                       cout<<"请输入新的部门:"<<endl;
                            cin>>bument;
                       cout<<"请输入新的工龄:"<<endl;
                            cin>>worktimet;
                       cout<<"请输入新的年薪:"<<endl;
                            cin>>payt;
                         s[j]->num=not;      
                         s[j]->zhiwei[20]=zhiweit[20];
                         s[j]->bumen[20]=bument[20];
                         s[j]->worktime=worktimet;
                         s[j]->pay=payt;     
                       cout<<"数据修改成功!";
                                         }
                                         }
                     if(flag2==0)
                                         {
                         cout<<"修改对象不存在!请查证后输入!"<<endl;
                                         }
                      cout<<"想继续修改吗(y/n)"<<endl;
                           cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                       cout<<"错误!不是内部函数!"<<endl;
                           cin>>c;
                                        }
                                   }while(c=='y');
                          break;
                                  }

             case '6':
                                 {
                    cout<<"本系统所有员工数据如下:"<<endl;
                 if(i==0)
                    cout<<"管理系统中没有录入数据或者数据已经被删除!"<<endl;
                 for(int k=0;k<i;k++)
                                 {
                    cout<<k+1<<" "<<"姓名:"<<" "<<s[k]->name<< "编号:"<<" "<<s[k]->num<<"职位:"<<" "<<s[k]->zhiwei <<"部门:"<<" "<<s[k]->bumen<<"工龄:"<<s[k]->worktime<<"年薪:"<<" "<<(*s[k]).pay <<endl;
                                 }
                 break;
                                 }
}

  cout<<"您想继续进行其他操作吗?(y/n)"<<endl;
  bool flag4=0;
  do
  {
        cin>>w;
  if(w!='y'&&w!='n')
    cout<<"错误!不是内部函数!"<<endl;
  else
    flag4=1;
  }
   while(flag4==0);
   if(w=='y')
       cout<<"请输入操作代码"<<endl;
       cout<<"(1)数据录入"<<endl;  
       cout<<"(2)删除人员"<<endl;
       cout<<"(3)修改数据"<<endl;
       cout<<"查询:"<<endl;
       cout<<"(4)按编号查询"<<endl;
       cout<<"(5)按姓名查询"<<endl;
       cout<<"(6)输出所有人员数据"<<endl;  
       cout<<"*****************************"<<endl;
           cin>>p;
}while(w=='y');
   for(int x=0;x<i;x++)
   {
    delete s[x];
       cout<<"delete all members!"<<endl;
   }

}

2008-1-14 12:42 阿华007
把帖子发成这样,很不负责任啊
可以用个附件发出来,我说不定帮你调试下,

2008-5-10 16:30 IE_Robin
请问是怎么解决的? 我不太专业,看了以后自己认为是不是因为录入时已经写入文件,要修改时必须先从文件中读出再修改?不知是不是这样?

2008-7-3 15:16 zmjeffwc
#include<iostream.h>
#include<string.h>
#include<fstream.h>
class employee
{
protected:
    char name[20];
    int num;
    char zhiwei[20];
    char bumen[20];
    int worktime;
    int pay;
public:
       employee()
           { }
       employee(char n[20],int no,char zw[20],char bm[20],int wt,int mp)
           {
       strcpy(name,n);
       num=no;
       strcpy(zhiwei,zw);
       strcpy(bumen,bm);
       worktime=wt;
       pay=mp;
           }
friend void main();
};

void main()
{
   cout<<"&Ccedil;&euml;&Ntilde;&iexcl;&Ocirc;&ntilde;&Auml;ú&ETH;è&Ograve;&ordf;&micro;&Auml;&sup2;&Ugrave;×÷&pound;&iexcl;"<<endl;
   cout<<"&sup2;&Ugrave;×÷&pound;&ordm;"<<endl;
   cout<<"(1)&Ecirc;&yacute;&frac34;&Yacute;&Acirc;&frac14;&Egrave;&euml;"<<endl;  
   cout<<"(2)&Eacute;&frac34;&sup3;&yacute;&Egrave;&Euml;&Ocirc;±"<<endl;
   cout<<"(3)&ETH;&THORN;&cedil;&Auml;&Ecirc;&yacute;&frac34;&Yacute;"<<endl;
   cout<<"&sup2;é&Ntilde;&macr;&pound;&ordm;"<<endl;
   cout<<"(4)°&acute;±à&ordm;&Aring;&sup2;é&Ntilde;&macr;"<<endl;
   cout<<"(5)°&acute;&ETH;&Otilde;&Atilde;&ucirc;&sup2;é&Ntilde;&macr;"<<endl;
   cout<<"(6)&Ecirc;&auml;&sup3;&ouml;&Euml;ù&Oacute;&ETH;&Egrave;&Euml;&Ocirc;±&Ecirc;&yacute;&frac34;&Yacute;"<<endl;  
   cout<<"*****************************"<<endl;

   char p;char w;
   employee *s[300];
   ofstream *file[400];
   int i=0;
   int j=0;
   bool flag2=0;
   do
   {
      cin>>p;
      if(p>='0'&&p<='6')
      flag2=1;
      else
      cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
   }
   while(flag2==0);
   do{
       switch(p)
           {
       case '1':
                   {
              char c;
              char name[20];
              int num;
              char zhiwei[20];
              char bumen[20];
              int worktime;
              int pay;
                 do{
                     cout<<"&ETH;&Otilde;&Atilde;&ucirc;:"<<endl;
                          cin>>name;
                     cout<<"±à&ordm;&Aring;:"<<endl;
                          cin>>num;
                     cout<<"&Ouml;°&Icirc;&raquo;:"<<endl;
                          cin>>zhiwei;
                     cout<<"&sup2;&iquest;&Atilde;&Aring;:"<<endl;
                          cin>>bumen;
                     cout<<"&sup1;¤&Aacute;&auml;:"<<endl;
                          cin>>worktime;
                     cout<<"&Auml;ê&ETH;&frac12;:"<<endl;
                          cin>>pay;
                  file[j]=new ofstream("e:\ouyang_file",ios::ate);
                  *file[j]<<"&ETH;&Otilde;&Atilde;&ucirc;"<<name<<"±à&ordm;&Aring;"<<num<<"&Ouml;°&Icirc;&raquo;"<<zhiwei<<"&sup2;&iquest;&Atilde;&Aring;"<<bumen<<"&sup1;¤&Aacute;&auml;:"<<worktime<<"&Auml;ê&ETH;&frac12;"<<pay<<endl;
                           j++;
                    s[i]=new employee(name,num,zhiwei,bumen,worktime,pay);
                           i++;
                     cout<<"&Ecirc;&yacute;&frac34;&Yacute;&Acirc;&frac14;&Egrave;&euml;&sup3;&Eacute;&sup1;&brvbar;&pound;&not;&frac14;&Igrave;&ETH;&oslash;?(y/n)"<<endl;
                          cin>>c;
                      flag2=0;
                               do
                                                           {
                                    if(c!='y'&&c!='n')
                                                                        {
                                       cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
                                            cin>>c;
                                                                        }
                                    else
                                         flag2=1;
                                                           }while(flag2==0);
                                 }while(c=='y');
           break;
                   }

                      case '4':
                                                  {
                            int no;
                            int j=0;
                            char c;
                            do {
                              int flag1=0;
                               cout<<"&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;&Ocirc;±&sup1;¤±à&ordm;&Aring;&Ecirc;&Ccedil;&pound;&ordm;"<<endl;
                                   cin>>no;
                              for(int j=0;j<i;j++)
                                                          {
                              if((no,(*s[j]).num)==0)
                                                          {
                               flag1=1;
                               cout<<"&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;&Ocirc;±&sup1;¤&Ecirc;&Ccedil;:"<<(*s[j]).num<<endl;
                               cout<<(*s[j]).name<<"±à&ordm;&Aring;"<<(*s[j]).num<<"&Ouml;°&Icirc;&raquo;:"<<(*s[j]).zhiwei<<"&sup2;&iquest;&Atilde;&Aring;:"<<(*s[j]).bumen<<"&sup1;¤&Aacute;&auml;:"<<(*s[j]).worktime<<"&Auml;ê&ETH;&frac12;:"<<(*s[j]).pay<<endl;
                                                          }
                                                          }
                              if(flag1==0)
                                 cout<<"&para;&Ocirc;&sup2;&raquo;&AElig;&eth;!&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;×&Ecirc;&Aacute;&Iuml;&sup2;&raquo;&acute;&aelig;&Ocirc;&Uacute;!"<<endl;
                                 cout<<"&Auml;ú&Iuml;&euml;&frac14;&Igrave;&ETH;&oslash;&sup2;é&Ntilde;&macr;&Acirc;&eth;?(y/n)"<<endl;
                                     cin>>c;
                              if(c!='y'&&c!='n')
                                                          {
                              cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
                                   cin>>c;
                                                          }
                                                        }
                        while(c=='y');
                           break;
                                                  }

              case '5':
                                  {
                   char n[20];
                   int j=0;
                   char c;
                   do
                                   {
                   int flag=0;
                    cout<<"&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;&Ocirc;±&sup1;¤&ETH;&Otilde;&Atilde;&ucirc;&Ecirc;&Ccedil;:"<<endl;
                         cin>>n;
                    for(int j=0;j<i;j++)
                                        {
                   if(strcmp(n,(*s[j]).name)==0)
                                   {
                    flag=1;
                      cout<<"&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;&Ocirc;±&sup1;¤&Ecirc;&Ccedil;&pound;&ordm;"<<(*s[j]).name<<endl;
                      cout<<(*s[j]).name<<"±à&ordm;&Aring;"<<(*s[j]).num<<"&Ouml;°&Icirc;&raquo;:"<<(*s[j]).zhiwei<<"&sup2;&iquest;&Atilde;&Aring;:"<<(*s[j]).bumen<<"&sup1;¤&Aacute;&auml;:"<<(*s[j]).worktime<<"&Auml;ê&ETH;&frac12;:"<<(*s[j]).pay<<endl;
                                        }
                                        }
                    if(flag==0)
                    cout<<"&para;&Ocirc;&sup2;&raquo;&AElig;&eth;!&Auml;ú&Ograve;&ordf;&sup2;é&Ntilde;&macr;&micro;&Auml;×&Ecirc;&Aacute;&Iuml;&sup2;&raquo;&acute;&aelig;&Ocirc;&Uacute;!"<<endl;
                    cout<<"&Auml;ú&Iuml;&euml;&frac14;&Igrave;&ETH;&oslash;&sup2;é&Ntilde;&macr;&Acirc;&eth;?(y/n)"<<endl;
                        cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                      cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
                            cin>>c;
                                        }
                                   }
                    while(c=='y');
                  break;
                                  }

             case '2':
                                 {
                   char name[20];
                   bool flag3=0;
                   char c;
                   do
                                   {
                     cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&Ograve;&ordf;&Eacute;&frac34;&sup3;&yacute;&micro;&Auml;&Ocirc;±&sup1;¤&ETH;&Otilde;&Atilde;&ucirc;&pound;&ordm;"<<endl;
                         cin>>name;
                    for(int h=0;h<i;h++)
                                        {
                      if(strcmp(name,s[h]->name)==0)
                                          {
                        flag3=0;
                            i--;
                             do{
                                 s[h]=s[h+1];
                                         h++;
                                                         }while(h<=i);
                                          }
                                        }
                    if(flag3==1)
                     cout<<"&Eacute;&frac34;&sup3;&yacute;&para;&Ocirc;&Iuml;ó&sup2;&raquo;&acute;&aelig;&Ocirc;&Uacute;&pound;&iexcl;&Ccedil;&euml;&sup2;é&Ouml;¤&ordm;ó&Ecirc;&auml;&Egrave;&euml;&pound;&iexcl;";
                     cout<<"&frac14;&Igrave;&ETH;&oslash;&pound;&iquest;(y/n)"<<endl;
                         cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                     cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
                         cin>>c;
                                        }
                                   }while(c=='y');
                     break;
                                 }

              case '3':
                                  {
                   char name[20];
                   int not;
                   char zhiweit[20];
                   char bument[20];
                   int payt;
                   int worktimet;
                   flag2=0;
                   char c;
                   do
                                   {
                     cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&Auml;ú&Ograve;&ordf;&ETH;&THORN;&cedil;&Auml;&micro;&Auml;&Ocirc;±&sup1;¤&ETH;&Otilde;&Atilde;&ucirc;&pound;&ordm;"<<endl;
                         cin>>name;
                     for(int j=0;j<i;j++)   
                                         {
                     if(strcmp(name,s[j]->name)==0)   
                                         {
                      flag2=1;
                       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&ETH;&Acirc;&micro;&Auml;±à&ordm;&Aring;&pound;&ordm;"<<endl;
                            cin>>not;
                       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&ETH;&Acirc;&micro;&Auml;&Ouml;°&Icirc;&raquo;&pound;&ordm;"<<endl;
                            cin>>zhiweit;
                       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&ETH;&Acirc;&micro;&Auml;&sup2;&iquest;&Atilde;&Aring;&pound;&ordm;"<<endl;
                            cin>>bument;
                       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&ETH;&Acirc;&micro;&Auml;&sup1;¤&Aacute;&auml;:"<<endl;
                            cin>>worktimet;
                       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&ETH;&Acirc;&micro;&Auml;&Auml;ê&ETH;&frac12;:"<<endl;
                            cin>>payt;
                         s[j]->num=not;      
                         s[j]->zhiwei[20]=zhiweit[20];
                         s[j]->bumen[20]=bument[20];
                         s[j]->worktime=worktimet;
                         s[j]->pay=payt;     
                       cout<<"&Ecirc;&yacute;&frac34;&Yacute;&ETH;&THORN;&cedil;&Auml;&sup3;&Eacute;&sup1;&brvbar;&pound;&iexcl;";
                                         }
                                         }
                     if(flag2==0)
                                         {
                         cout<<"&ETH;&THORN;&cedil;&Auml;&para;&Ocirc;&Iuml;ó&sup2;&raquo;&acute;&aelig;&Ocirc;&Uacute;&pound;&iexcl;&Ccedil;&euml;&sup2;é&Ouml;¤&ordm;ó&Ecirc;&auml;&Egrave;&euml;&pound;&iexcl;"<<endl;
                                         }
                      cout<<"&Iuml;&euml;&frac14;&Igrave;&ETH;&oslash;&ETH;&THORN;&cedil;&Auml;&Acirc;&eth;(y/n)"<<endl;
                           cin>>c;
                    if(c!='y'&&c!='n')
                                        {
                       cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
                           cin>>c;
                                        }
                                   }while(c=='y');
                          break;
                                  }

             case '6':
                                 {
                    cout<<"±&frac34;&Iuml;&micro;&Iacute;&sup3;&Euml;ù&Oacute;&ETH;&Ocirc;±&sup1;¤&Ecirc;&yacute;&frac34;&Yacute;&Egrave;&ccedil;&Iuml;&Acirc;&pound;&ordm;"<<endl;
                 if(i==0)
                    cout<<"&sup1;&Uuml;&Agrave;í&Iuml;&micro;&Iacute;&sup3;&Ouml;&ETH;&Atilde;&raquo;&Oacute;&ETH;&Acirc;&frac14;&Egrave;&euml;&Ecirc;&yacute;&frac34;&Yacute;&raquo;ò&Otilde;&szlig;&Ecirc;&yacute;&frac34;&Yacute;&Ograve;&Ntilde;&frac34;&shy;±&raquo;&Eacute;&frac34;&sup3;&yacute;&pound;&iexcl;"<<endl;
                 for(int k=0;k<i;k++)
                                 {
                    cout<<k+1<<" "<<"&ETH;&Otilde;&Atilde;&ucirc;:"<<" "<<s[k]->name<< "±à&ordm;&Aring;:"<<" "<<s[k]->num<<"&Ouml;°&Icirc;&raquo;&pound;&ordm;"<<" "<<s[k]->zhiwei <<"&sup2;&iquest;&Atilde;&Aring;&pound;&ordm;"<<" "<<s[k]->bumen<<"&sup1;¤&Aacute;&auml;:"<<s[k]->worktime<<"&Auml;ê&ETH;&frac12;&pound;&ordm;"<<" "<<(*s[k]).pay <<endl;
                                 }
                 break;
                                 }
}

  cout<<"&Auml;ú&Iuml;&euml;&frac14;&Igrave;&ETH;&oslash;&frac12;&oslash;&ETH;&ETH;&AElig;&auml;&Euml;&ucirc;&sup2;&Ugrave;×÷&Acirc;&eth;?(y/n)"<<endl;
  bool flag4=0;
  do
  {
        cin>>w;
  if(w!='y'&&w!='n')
    cout<<"&acute;í&Icirc;ó&pound;&iexcl;&sup2;&raquo;&Ecirc;&Ccedil;&Auml;&Uacute;&sup2;&iquest;&ordm;&macr;&Ecirc;&yacute;&pound;&iexcl;"<<endl;
  else
    flag4=1;
  }
   while(flag4==0);
   if(w=='y')
       cout<<"&Ccedil;&euml;&Ecirc;&auml;&Egrave;&euml;&sup2;&Ugrave;×÷&acute;ú&Acirc;&euml;"<<endl;
       cout<<"(1)&Ecirc;&yacute;&frac34;&Yacute;&Acirc;&frac14;&Egrave;&euml;"<<endl;  
       cout<<"(2)&Eacute;&frac34;&sup3;&yacute;&Egrave;&Euml;&Ocirc;±"<<endl;
       cout<<"(3)&ETH;&THORN;&cedil;&Auml;&Ecirc;&yacute;&frac34;&Yacute;"<<endl;
       cout<<"&sup2;é&Ntilde;&macr;&pound;&ordm;"<<endl;
       cout<<"(4)°&acute;±à&ordm;&Aring;&sup2;é&Ntilde;&macr;"<<endl;
       cout<<"(5)°&acute;&ETH;&Otilde;&Atilde;&ucirc;&sup2;é&Ntilde;&macr;"<<endl;
       cout<<"(6)&Ecirc;&auml;&sup3;&ouml;&Euml;ù&Oacute;&ETH;&Egrave;&Euml;&Ocirc;±&Ecirc;&yacute;&frac34;&Yacute;"<<endl;  
       cout<<"*****************************"<<endl;
           cin>>p;
}while(w=='y');
   for(int x=0;x<i;x++)
   {
    delete s[x];
       cout<<"delete all members!"<<endl;
   }

}

2008-7-3 15:19 zmjeffwc
就是将语句s=new employee(name,num,zhiwei,bumen,worktime,pay);
改成s[i]=new employee(name,num,zhiwei,bumen,worktime,pay);

2008-7-3 15:30 zmjeffwc
怎么显示不出来 s[i]=new employee(name,num,zhiwei,bumen,worktime,pay);

2008-7-3 15:32 zmjeffwc
反正是s用数组表示

2008-7-3 16:08 zmjeffwc
我理解错了

页: [1]
查看完整版本: 一个C++编程问题


Powered by ITPUB论坛