当前位置:首页 > 通信资讯 > 正文

c++会员管理系统(会员管理系统c语言)

本文实例为大家分享了C++实现会员管理程序的具体代码,供大家参考,具体内容如下

设计快捷店会员的简单管理程序。基本要求如下:

(1)定义人民币RMB类,实现人民币的基本运算和显示。
(2)定义会员member类,表示会员的基本信息,包括:编号(按建立会员的顺序自动生成),姓名,密码,电话。提供输入、输出信息等功能。
(3)由RMB类和member类共同派生一个会员卡memberCar类,提供新建会员、充值、消费和查询余额等功能。
(4)main函数定义一个memberCar类数组或链表,保存会员卡,模拟一个快捷店的会员卡管理功能,主要包括:

① 新建会员;
② 已有会员充值;
③ 已有会员消费(凭密码,不能透支);
④ 输出快捷店当前会员数,营业额(收、支情况)。

代码:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 #include<iostream> #include<String.h> using namespace std; class RMB{ int yuan,jiao,fen; public: RMB(int y=0,int j=0,int f=0){ yuan=y; jiao=j; fen=f; } RMB(double x) { int n = int((x + 0.005) * 100); yuan = n / 100; jiao = (n - yuan * 100) / 10; fen = n % 10; } operator double() { return (yuan + jiao * 0.1 + fen * 0.01); } ~RMB() {} friend ostream & operator<<(ostream&output, const RMB&m){ output << m.yuan << "元" << m.jiao << "角" << m.fen << "分" << endl; return output; } friend istream & operator>>(istream&input, RMB&m){ cout << "元:"; input >> m.yuan; cout << "角:"; input >> m.jiao; cout << "分:"; input >> m.fen; return input; } }; class member{ public: static int number; char name[20],code[10], phoneNumber[12]; static int bianhao() { number++; return number; } member(char*a,char*c,char*p){ strcpy(name,a); strcpy(code,c); strcpy(phoneNumber,p); } ~member() {} friend istream&operator>>(istream&input, member&A) { cout << "please input name: " << endl; input >> A.name; cout << "please input code: " << endl; input >> A.code; cout << "please input phone number : " << endl; input >> A.phoneNumber; return input; } friend ostream&operator<<(ostream&output, member&A) { output << "the information of member:" << endl; output << "number" << '\t' << "name" << '\t' << "phone" << endl; output << A.bianhao() << '\t' << A.name << '\t' << A.phoneNumber << endl; return output; } }; int member::number=0; class memberCar:public RMB,public member{ public: RMB income, outcome, balance; memberCar*next; memberCar(char*a, char*c, char*p):member(a,c,p){ balance = 0; income = 0; outcome = 0; } ~memberCar() {} friend ostream&operator<<(ostream&output, const memberCar&A) { output << "the information of member:" << endl; output << "number" << '\t' << "name" << '\t' << "phone" << '\t' << '\t' << "balance" << endl; output << A.bianhao() << '\t' << A.name << '\t' << A.phoneNumber << '\t' << A.balance << endl; return output; } void recharge() { cout << "How much do you want to recharge?" << '\n' << "please input the money : " << endl; cin >> income; balance =balance + income; cout << "your balance : " << balance << endl; } void cost() { char y[10]; cout << "please input your code : " << endl; cin >> y; if (strncmp(code, y, 10)==0) { cout << "please input the money you cost : " << endl; cin >> outcome; if (outcome > balance) { cout << "your balance is not enough ! " << endl; } else { balance = balance - outcome; cout << "your balance : "<< balance; } } else { cout << "your code is wrong ! " << endl; } } void query(){ cout << "your balance : " << balance; } }; void AddFront(memberCar*&h, memberCar*&t) { t->next = h; h = t; } void FindList(memberCar*head, int n = 2) { char s[20]; cout << "please input your name : " << endl; cin >> s; while (head) { if (strncmp(head->name, s, 20) == 0) { switch (n) { case 2: (*head).recharge(); break; case 3: (*head).cost(); break; } } head = head->next; } } void ShowList(memberCar*head) { int count = 0; RMB I=0, O=0; while (head) { count++; I=I+head->income; O = O + head->outcome; head = head->next; } cout << "the number of member : " << count << endl; cout << "the income of the store : " << I << endl; cout << "the outcome of the store : " << O << endl; cout << "turn-over of the store : " << (I - O) << endl; } int main() { int choice; memberCar*head = NULL, *p; do { cout << "please choice:\n"; cout << "1 : new member, 2 : recharge, 3 : purchase , 4 :output the number of member and turn-over,other number is over! " << endl; cin >> choice; switch (choice) { case 1: { cout << "input information of new member : " << endl; char a[20],c[10],h[12]; cout << "please input name: " << endl; cin>>a; cout << "please input code: " << endl; cin>>c; cout << "please input phone number : " << endl; cin>>h; p = new memberCar(a, c, h); AddFront(head, p); cout << *p << endl; break; } case 2: { FindList(head, 2); break; } case 3: { FindList(head, 3); break; } case 4: { ShowList(head); break; } } } while (choice); return 0; }

运行结果:

c++会员管理系统(会员管理系统c语言)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_15719613/article/details/105738982

如果您对该产品感兴趣,请填写办理(客服微信:xiaoxiongyidong)

为您推荐:

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。