作业
不知道老师您是不是要这样的类型:
分为user.h、user.cpp、main.cpp三部分组成:
#ifndef USER_H #define USER_H #include<iostream> #include<string.h> using namespace std; class user { public: void setInfo(); void printInfo(); void changePasswd(); int use(); int CurrentID(int n); private: string name="bot"; string passwd="111111"; string email="\0"; int inuse=0; int id=999; int passinuse=0; }; #endif
#include"user.h" #include<iostream> #include<string.h> using namespace std; void user::setInfo() { string x; cout<<"请 输入用户名:"; cin>>name; if(passinuse==0){ cout<<"请 输入密码:"; cin>>passwd; } cout<<"请 输入邮箱地址:"; cin>>email; inuse=1; cout<<"修 改成功!"<<endl; } void user::printInfo() { string A="\0"; cout<<"用 户ID"<<id<<endl; cout<<"用 户名:"<<name<<endl; cout<<"密 码:"; for(int i=1;i<=passwd.length();i++) cout<<"*"; cout<<endl; if(email.compare(A)==0) cout<<"尚 未填写邮箱地址"<<endl; else cout<<"邮 箱地址:"<<email; } void user::changePasswd() { string t; int n=3; do { cout<<"请 输入旧密码,默认密码为111111:"; cin>>t; if(t.compare(passwd)==0) break; else{n--;cout<<"请 重新输入,剩余次数为:"<<n<<endl;} }while(n!=0); if(n!=0) {cout<<"请 输入新密码:";cin>>passwd;cout<<"修 改成功!"<<endl;} else cout<<"请 稍后重试,暂时退出修改密码!"<<endl; if(passinuse==0) passinuse=1; } int user::use(){ return inuse; } int user::CurrentID(int N){ id+=N; return id; }
#include"user.h" #include<iostream> #include<string.h> #define S cout<<"请 输入指令:"; using namespace std; user us[100]; void gai(int); int main(){ int pan=0,N=-1; while(pan==0){ cout<<"1 为增添新的用户信息,2为调用已有用户信息,3为退出系统:"<<endl; int x; S cin>>x; switch(x){ case 1:{ N++; cout<<"当 前用户ID为:"<<us[N].CurrentID(N)<<endl; gai(N); break; } case 2: if(N==-1){ cout<<"系 统暂无用户!"<<endl; cout<<endl; break; } else{ cout<<"请 输入用户ID:"; int n=0,n1; cin>>n;n1=n-999; if(n1<=N&&n1>=0) gai(n1); else { cout<<"无 该用户信息!"<<endl; cout<<endl; } break; } case 3:cout<<"谢 谢使用!"<<endl;pan=1;break; default:cout<<"无 效的指令,请重新输入!"<<endl;cout<<endl; } } return 0; } void gai(int n){ int x,pan=0; while(pan==0){ cout<<endl; cout<<"1 为设置用户信息,2为打印用户信息,3为修改密码,4为退出当前菜单:"<<endl; S cin>>x; switch(x){ case 1:if(us[n].use()==0){ us[n].setInfo(); break; } else{ cout<<"请 勿重复设置该用户信息!"<<endl; break; } case 2: us[n].printInfo();cout<<endl;break; case 3:{ us[n].changePasswd(); break; } case 4:pan=1;cout<<endl;break; default:cout<<"无 效的指令,请重新输入!"<<endl; } } }
结果:





上次作业更改过的代码:
#include<iostream> #include<cmath> using namespace std; class Complex{ public: Complex(double x1=0,double y1=0):x(x1),y(y1){} Complex(const Complex &p):x(p.x),y(p.y){} void add(Complex &p){ x+=p.x;y+=p.y; } void show(){ cout<<x<<"+"<<y<<"i"<<endl; } double mod(){ return sqrt(x*x+y*y); } private: double x,y; }; int main(){ Complex c1(3,5); Complex c2=4.5; Complex c3(c1); c1.add(c2); c1.show(); cout<<c1.mod(); }

浙公网安备 33010602011771号