void List::createContacts() {
int num=0,num2=0;
while(1){
system("cls");
cout << "==========================" << endl;
cout << "[ 通讯录——创建联系人 ]" << endl;
cout << "==========================" << endl;
cout << "请输入联系人创建数量(1-100):";
//此处开始检测
if (!(cin >> num) || num <= 0 || num > 100) {
cout << "数据输入错误,请重新输入!" << endl;
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
Sleep(2000);
continue;
}
//此处结束检测
num2 = num;
cout << "请根据以下格式依次输入联系人信息\n姓名 手机号 座机号 QQ号 邮箱 单位 住址 分类" << endl;
while (num--) {
string telephone, mobilephone, qq, name, unit, address, sort, email;
while (1) {
int flag = 0;
cout << "请输入第" << num2 - num << "个联系人信息:" << endl;
cin >> name >> mobilephone >> telephone >> qq >> email >> unit >> address >> sort;
contacts* temp = head;
//姓名查重
while (temp != NULL) {
if (temp->getName() == name) {
cout << "您输入的姓名与已有姓名重复,请重新输入!" << endl;
Sleep(2000);
flag = 1;
break;
}
temp = temp->getNext();
}
if (flag == 1) {
continue;
}
break;
}
addNode(telephone,mobilephone,qq,name,unit,address,sort,email);
}
cout << "联系人创建完成!程序将在3秒后退出回菜单" << endl;
Sleep(3000);
break;
}
return;
}
以下是部分代码:
if (!(cin >> num) || num <= 0 || num > 100) {
cout << "数据输入错误,请重新输入!" << endl;
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
Sleep(2000);
continue;
}
注意:使用cin.ignore(numeric_limits<streamsize>::max(), '\n');
代码时,若已经引入了windows.h头文件,那么需要在此头文件上输入#define NOMINMAX
,也就是:
#define NOMINMAX
#include <windows.h>
© 版权声明
文章版权归作者所有,请勿转载至任何平台。
THE END
暂无评论内容