⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yangtao.cpp

📁 一个小程序代码   嘿嘿  一个小程序代码 ?嘿嘿 
💻 CPP
字号:
#include<iostream>
#include<iomanip>
#include<string>
#include<fstream>
using namespace std;
#define Max 40
class personer
{
 private:
  int tage;
  int Number;
  char Name[10];
  char address[50];
  long callNumber;
 public:
  personer(){ }
  int gettage(){return tage;}
  int getNumber(){return Number;}
  void setname(char na[])//改名
  {
   strcpy(Name,na);
  }
  void addperson(int n,char na[],char addr[],long call)//增加
  {
   Number=n;strcpy(Name,na);strcpy(address,addr);callNumber=call;tage=0;
  }
  void delet()//删除
  {
   tage=1;
  }
  void display()//显示信息
  {
   cout<<"学生号 :"<<Number<<endl;
   cout<<"姓名  :"<<Name<<endl;
   cout<<"地址  :"<<address<<endl;
   cout<<"电话号码:"<<callNumber<<endl;
  }
};
class people
{
 private:
  personer per[Max];
  int top;
 public:
  people()
  {
   personer person;
   top=-1;
   fstream file("student.txt",ios::in);
   while(1)
   {
    file.read((char*)&person,sizeof(person));
    if(!file)break;
    top++;
    per[top]=person;
    }
   file.close();
  }
  personer *query(int n)
  {
   int i;
   for (i=0;i<=top;i++)
    if ((per[i].getNumber()==n)&&(per[i].gettage()==0)) return &per[i];
   return NULL;
  }
  void add(int n,char na[],char addr[],long call)
  {
   personer *p=query(n);
   if(p==NULL)
   {
    top++;
    per[top].addperson(n,na,addr,call);
   }
  }
  void delet(int n)
  {
   personer *p=query(n);
   if(p==NULL)cout<<"No this person !"<<endl;
   else p->delet();
   }
  void reset(int n)
  {
   char Na[10];
   personer *p=query(n);
      if(p==NULL)cout<<"No this person !"<<endl;
   else
   {
    cout<<"please input a new name !"<<endl;
    cin>>Na;
    p->setname(Na);
    cout<<"finshed rename!"<<endl;
   }
  }
  void dis()
  {
	  for(int i=0;i<=top;i++)
    if(per[i].gettage()==0)
		  per[i].display();
  }
   void search(int n)
  {
   personer *p=query(n);
         if(p==NULL)cout<<"No this person!"<<endl;
   else p->display();
  }
  ~people()
  {
   fstream file("student.txt",ios::out);
   for(int i=0;i<=top;i++)
    if(per[i].gettage()==0)
     file.write((char*)&per[i],sizeof(per[i]));
   file.close();
  }
};
int main()
{
 int choice;
 int Number;
 char Name[10];
 char address[50];
 long callNumber;
 people peo;
 while(choice!=0)
 {
  cout<<endl<<"\t\t\t计本061班学生管理系统\n\n\n";
  cout<<"\t\t\t1.个人信息\n\n\t\t\t2.更改\n\n\t\t\t3.增加\n\n\t\t\t4.删除\n\n\t\t\t5.查找\n\n\t\t\t0.退出"<<endl;
  cin>>choice;
  switch(choice)
  {
  case 1 :
      cout<<endl<<"\t\t\t计本061班学生信息"<<endl;
	  peo.dis();
            break;
  case 2:
   cout<<endl<<"\t\t\t更改"<<endl;
   cout<<"请输入学生号"<<endl;
   cin>>Number;
   peo.reset(Number);
   break;
  case 3:
   cout<<endl<<"\t\t\t增加"<<endl;
   cout<<"请输入学生号"<<endl;
   cin>>Number;
   cout<<"请输入姓名"<<endl;
   cin>>Name;
   cout<<"请输入地址"<<endl;
   cin>>address;
   cout<<"请输入电话号码"<<endl;
   cin>>callNumber;
   peo.add(Number,Name,address,callNumber);
   break;
  case 4:
   cout<<endl<<"\t\t\t删除"<<endl;
   cout<<"请输入学生号"<<endl;
   cin>>Number;
   peo.delet(Number);
   break;
  case 5:
   cout<<endl<<"\t\t\t查找"<<endl;
   cout<<"请输入学生号"<<endl;
   cin>>Number;
   peo.search(Number);
   break;
  case 0:break;
  default : cout<<"输入错误,请重新输入!"<<endl;
  }//switch
 }//while
 return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -