题目
通讯录管理程序。通讯录是由通讯录条目组成的。…
一、子问题描述:通讯录条目由姓名、电话组成的。可以进行输入、输出、修改姓名、修改电话。(可以进行适当的扩展)
程序主菜单如下:
1.输入通讯录条目
2.输出通讯录条目
3.修改姓名
4.修改电话
0.退出
要求:采用面向对象方式编写此程序。
提示:该实验只做了一条条目
根据UML图编写出CommEntry对象
将CommEntry对象定义为头文件,便于主函数调用。
CommEntry.h文件
#ifndef CommEntry_H
#define CommEntry_H
#include<iostream>
using namespace std;
class CommEntry{
public:
void input();
void output();
void setName(string nm);
void setTel(string t);
private:
string name;
string tel;
};
void CommEntry::input(){
cout<<"Name:";
cin>>name;
cout<<"Tel:";
cin>>tel;
}
void CommEntry::output(){
cout<<"Name:"<<name<<" Tel:"<<tel<<endl;
}
void CommEntry::setName(string nm){
cout<<"NewName:";
cin>>nm;
name=nm;
}
void CommEntry::setTel(string t){
cout<<"NewTel:";
cin>>t;
tel=t;
}
#endif
主函数部分
main.cpp文件
#include<iostream>
#include"CommEntry.h"
using namespace std;
void content()
{
cout<<"==========================="<<endl;
cout<<"1.输入通讯录条目"<<endl;
cout<<"2.输出通讯录条目"<<endl;
cout<<"3.修改姓名"<<endl;
cout<<"4.修改电话"<<endl;
cout<<"0.退出"<<endl;
cout<<"============================"<<endl;
cout<<"请输入(0-4):";
}
int main(){
system("chcp 65001");
int n;
CommEntry one;
while(1){
content();
cin>>n;
switch(n){
case 0:return 0;
case 1:{
one.input();
break;
}
case 2:{
one.output();
cout<<"按回车键继续";
getchar();
getchar();
break;
}
case 3:{
string newn;
one.setName(newn);
break;
}
case 4:{
string newt;
one.setTel(newt);
break;
}
default:{
cout<<"Error!!!"<<endl;
break;
}
}
}
return 0;
}
总结
该实验是熟悉面向对象编程的开始,熟悉使用封装、UML图、定义头文件。