华为第六届创新编程大赛第一轮 电话本题目
比赛的时候提交不了,先把题目记下来
描述: 实现一个简易电话号码本的程序,存储电话号码,可以通过名字获取电话号码,同时也可以通过电话号码获取对应的名字。
说明:
1、名字由英文字母组成,区分大小写。1<=字母数量<=20
2、名字和电话号码一一对应
3、名字和电话号码均唯一
4、电话号码长度n,由数字组成。1<= n <=20
5、电话号码本中最大的记录条数为200
运行时间限制: 无限制
内存限制: 无限制
输入: 输入命令字如下:
save 保存姓名和电话号码 示例:"save tom 13888888888"
getName 通过电话号码获取名字 示例:"getName 13888888888"
getPhoneNum 通过名字获取电话号码 示例:"getPhoneNum tom"
delete 删除姓名对应的存储记录 示例:"delete tom"
count 获取电话号码本存储的总人数 示例:"count"
clear 清除电话号码本 示例:"clear"
注意:
输入时每行只有一条命令(比如:C语言可使用gets函数获取一行输入命令)。
命令中的多个单词间使用一个空格符隔开,如上面示例。
输出: 1、若输入不符合要求(如:名字中含有非英文字母,或其他认为错误的输入)均需输出"error"。
2、每条输出后使用换行符隔开(见后面样例)。
输出要求:
1)保存电话号码本,保存成功后要求回显。例如输入"save tom 13888888888",则输出为"tom 13888888888"。同时保存对应的名字和电话号码。如名字或电话号码存在,则输出"error"。如存储超过大小限制则输出"error"。
2)通过电话号码获取名字。例如输入"getName 13888888888"则输出为"tom"。如无对应的电话号码,则输出"error"
3)通过名字获取电话号码。例如输入"getPhoneNum tom",则输出为"13888888888"。如无对应的名字,则输出"error"
4)删除对应的存储记录。例如当前存储的记录为"tom 13888888888",输入"delete tom",则输出"ok"。输入"delete jack",则输出"error"。
5)获取电话号码本存储的总人数。例如当前存储两个电话号码。输入"count",则输出为"2"。
6)清除电话本。电话号码本记录清除,无需输出。
样例输入:
save zhangsan 11111111
count
save lisi 22222222
count
getName 11111111
样例输出:zhangsan 11111111
1
lisi 22222222
2
zhangsan