• 大小: 8KB
    文件类型: .cpp
    金币: 2
    下载: 1 次
    发布日期: 2021-06-16
  • 语言: C/C++
  • 标签: C++  课程设计  源码  

资源简介

都好久没用C++了,前两天一个学弟要我帮忙做课程设计 ,于是随手就做了一个,由于做得匆忙,格式还需修改下。以实现全部的功能,查找,添加,保存,读取文件,计算数据。。。 希望对大家有些帮助 ...

资源截图

代码片段和文件信息

#include
#include
using namespace std;

struct message
{char m_id[20]; //用户ID
 char m_name[20]; //用户姓名
 int m_usedegree; //用了多少度电
 double money; //应缴多少钱
 int flag; //是否缴费1表示已交
}mess;



class user               //用户的基类
{private:
char m_id[20];
    char m_name[20];
public:
user(){}
user(char *ichar *j){strcpy(m_idi);strcpy(m_namej);}
char *get_id(){return m_id;}
char *get_name(){return m_name;}
virtual double compute(int m_usedegree){return 0.0;}
};
 
class Student_user:public user           //学生
{private:
int m_usedegree;
double money;
int flag;
 public:
Student_user(){}
Student_user(int ldouble mint fchar *ichar *j):user(ij)
{m_usedegree=l;money=m;flag=f;}
double compute(int m_usedegree)
{
if(m_usedegree<12)
return 0;
else
return (m_usedegree-12)*0.7;
}
int get_m_usedegree(){return m_usedegree;}
int get_flag(){return flag;}
};

class Teacher_user:public user           //教师
{private:
int m_usedegree;
double money;
int flag;
 public:
Teacher_user(){}
Teacher_user(int ldouble mint fchar *ichar *j):user(ij)
{m_usedegree=l;money=m;flag=f;}
double compute(int m_usedegree)
{
return m_usedegree*0.5;
}
int get_m_usedegree(){return m_usedegree;}
int get_flag(){return flag;}
};


int sum_Student_user;
int sum_Teacher_user;
void face1();
void help();


void save_Student_user(message t)                            //保存学生用户
{
ofstream ofile(“Student_user.dat“ios_base::app);
ofile.write((char *)&tsizeof(t));
ofile.close();
//记录学生信息条数
int m=0;
ifstream Student_user(“Student_user_sum.dat“ios_base::in);
Student_user.read((char *)&msizeof(m));
Student_user.close();
sum_Student_user=m;
sum_Student_user++;
ofstream Student_user2(“Student_user_sum.dat“ios_base::trunc);
Student_user2.write((char *)&sum_Student_usersizeof(sum_Student_user));
Student_user2.close();
face1();
}

void Student_user_enrol()                     //学生信息登记
{    

 message t;
 char m_id[20]; //用户ID
 char m_name[20]; //用户姓名
 int m_usedegree; //用了多少度电
 int flag; //是否缴费
  cout<<“输入用户ID“;
  cin>>m_id;
  cout<<“输入用户姓名:“;
  cin>>m_name;
      cout<<“输入用了多少度电:“;
  cin>>m_usedegree;
  cout<<“输入是否缴费:“;
  cin>>flag;
  Student_user s2(m_usedegree0flagm_idm_name);
  t.m_usedegree=s2.get_m_usedegree();
  t.flag=s2.get_flag();
  strcpy(t.m_ids2.get_id());
  strcpy(t.m_names2.get_name());
  t.money=s2.compute(m_usedegree);
  save_Student_user(t);
}


void save_Teacher_user(message t)                            //保存教师用户
{
ofstream ofile(“Teacher_user.dat“ios_base::app);
ofile.write((char *)&tsizeof(t));
ofile.close();
//记录学生信息条数
int m=0;
ifstream Student_user(“Teacher_user_sum.dat“ios_base::in);
Student_user.read((char *)&msizeof(m));
Student_user.close();
sum_Teacher_user=m;
sum_Teacher_user++;
ofstream Student_user2(“Teacher

评论

共有 条评论