罗永浩做的网站,如何查看网站做没做竞价,poedit pro wordpress,如何用ps制作一个网页目录 一. 实验目的
二. 系统设计
三. 系统设计流程#xff1a;
四. 实验结果及效果展示
五. 实验总结
六. 附录#xff1a;源代码 一. 实验目的 本次实验旨在通过实现一个简单的通讯录管理系统#xff0c;加深对C语言结构体、数组、指针、函数、控制结构等基本概念的理…目录 一. 实验目的
二. 系统设计
三. 系统设计流程
四. 实验结果及效果展示
五. 实验总结
六. 附录源代码 一. 实验目的 本次实验旨在通过实现一个简单的通讯录管理系统加深对C语言结构体、数组、指针、函数、控制结构等基本概念的理解与应用。通过设计并实现一个包含添加、删除、查找、显示、修改和清空联系人信息功能的通讯录系统提高编程实践能力和问题解决能力。 二. 系统设计
1. 本实验完成了一个完整的通讯录管理系统该系统通过结构体Person定义了联系人的基本信息包括姓名、性别、年龄、电话号码和家庭住址。通过另一个结构体addressbooks定义了通讯录该通讯录包含一个Person类型的数组和一个记录当前联系人个数的整数。系统提供了添加、删除、查找、显示、修改和清空通讯录等功能。 2. 结构体设计 person结构体用于存储联系人的详细信息包括姓名、性别、年龄、电话号码和家庭住址。 addressbooks结构体用于存储通讯录包含一个Person类型的数组和一个记录当前联系人个数的整数。 3. 系统函数实现 choice()函数显示菜单选项引导用户输入操作指令。 AddPerson(addressbooks*abs)函数实现添加新联系人到通讯录功能。 ShowPerson(addressbooks*abs)函数显示通讯录中所有联系人的信息。 IsHave(addressbooks*abs,string name)函数判断通讯录中是否存在指定姓名的联系人并返回其在数组中的位置。 DeletePerson(addressbooks*abs,string name)函数根据姓名删除通讯录中的联系人。 FindPerson(addressbooks*abs)函数根据姓名查找并显示联系人的详细信息。 ModifyPerson(addressbooks*abs)函数根据姓名修改联系人的信息。 ClearAddress(addressbooks*abs)函数清空通讯录中的所有联系人信息。 4. 控制结构与输入输出 使用switch语句来根据用户不同的指令执行不同的功能在进行查找删除修改等操作的时候封装一个独立判断是否存在该联系人的IsHave函数。 三. 系统设计流程 四. 实验结果及效果展示 首先进入通讯录管理系统界面 在进行删除查找联系人等操作之前首先得有联系人才能进行但是我们也能直接进行系统会进行相关提示这就是整个系统的容错性和健壮性不会出现其他乱七八糟的错误如下所示 当要删除一个当前通讯录并不存在的联系人时系统就会提示你查无此人。并且由于我们在代码中加入了system(pause)和system(cls)两行代码每执行完一个操作就会提示“请按任意键继续”并且会进行清屏操作不会影响用户的观感。
下面我们进行添加联系人操作 输入相关联系人信息通讯录当中就保存了该联系人。
进行查看联系人操作如下所示 下面我们进行最后一步清空通讯录并退出该系统如下所示 当执行完清空通讯录操作之后我们再执行查看联系人操作就会发现通讯录已为空 最后退出整个通讯录管理系统 五. 实验总结 本次实验通过设计并实现一个通讯录管理系统加深了对C语言结构体、数组、指针、函数、控制结构等概念的深入理解。通过实际操作掌握了如何将这些知识点应用到实际编程中提高了编程实践能力和问题解决能力。未来将继续努力提高自己的编程水平和能力。 六. 附录源代码 #includeiostream
using namespace std;
#includestring
#define MAX 1000//定义好联系人的结构体
typedef struct Person {string p_name; //联系人姓名int p_sex; //联系人性别1-男2-女int p_age; //联系人年龄string p_phonenum; //电话号码string p_addresshome; //家庭住址
};//定义好通讯录结构体
typedef struct addressbooks {Person personarry[MAX]; //通讯录保存联系人这里设置为MAX也就是最多1000个int a_num; //联系人实际个数
};//函数的声明
void choice();
void AddPerson(addressbooks* abs);
void ShowPerson(addressbooks* abs);
int IsHave(addressbooks* abs, string name);
void DeletePerson(addressbooks* abs, string name);
void FindPerson(addressbooks* abs);
void ModifyPerson(addressbooks* abs);
void ClearAddress(addressbooks* abs);void main() {//通讯录管理系统addressbooks abs;abs.a_num 0;while (1) {int num1;string name;choice();cin num1;switch (num1) {case 1:AddPerson(abs);break;case 2: cout 请输入要删除的联系人姓名: endl;cin name;DeletePerson(abs, name);break;case 3:FindPerson(abs);break;case 4:ShowPerson(abs);break;case 5:ModifyPerson(abs);break;case 6:ClearAddress(abs);break;case 0:cout 感谢使用通讯录管理系统 endl;return;break;}system(pause);system(cls);}
}//实现通讯录菜单
void choice() {cout *************************** endl;cout ****** 1. 添加联系人 ****** endl;cout ****** 2. 删除联系人 ****** endl;cout ****** 3. 查找联系人 ****** endl;cout ****** 4. 查看联系人 ****** endl;cout ****** 5. 修改联系人 ****** endl;cout ****** 6. 清空通讯录 ****** endl;cout ****** 0.退出通讯录系统 **** endl;cout **************************** endl;cout 请输入您所要进行的操作(0~6): endl;
}//实现添加联系人功能
void AddPerson(addressbooks * abs) {string name;cout 请输入要添加的联系人姓名: endl;cin name;abs-personarry[abs-a_num].p_name name;while (1) {int sex;cout 请输入要添加的联系人性别: endl;cout 1----男 endl;cout 2----女 endl;cin sex;if (sex 1 || sex 2) {abs-personarry[abs-a_num].p_sex sex;break;}else {cout 输入有误请输入正确的性别1,2 endl;}}int age;cout 请输入要添加的联系人年龄: endl;cin age;abs-personarry[abs-a_num].p_age age;string phone;cout 请输入要添加的联系人电话号码: endl;cin phone;abs-personarry[abs-a_num].p_phonenum phone;string address;cout 请输入要添加联系人的家庭住址: endl;cin address;abs-personarry[abs-a_num].p_addresshome address;abs-a_num;cout 添加成功 endl;
}//实现显示联系人的功能
void ShowPerson(addressbooks* abs) {if (abs-a_num 0) {cout 当前通讯录为空 endl;}else {for (int i 0; i abs-a_num; i) {cout 姓名 abs-personarry[i].p_name \t;cout 性别 (abs-personarry[i].p_sex 1 ? 男 : 女) \t;cout 年龄 abs-personarry[i].p_age \t;cout 电话号码 abs-personarry[i].p_phonenum \t;cout 家庭住址 abs-personarry[i].p_addresshome endl;}}
}//实现一个判断通讯录当中是否有联系人的功能方便查找删除清空等操作
int IsHave(addressbooks* abs, string name) {for (int i 0; i abs-a_num; i) {if (abs-personarry[i].p_name name) {return i;}}return -1;
}//实现删除联系人功能
void DeletePerson(addressbooks* abs, string name) {int flagIsHave(abs, name);if (flag -1) {cout 查无此人 endl;}else {for (int i flag; i abs-a_num; i) {abs-personarry[i] abs-personarry[i 1];}abs-a_num--;cout 删除成功 endl;}
}//实现查找一个联系人的功能
void FindPerson(addressbooks* abs) {string name;cout 请输入您要查找的联系人姓名: endl;cin name;int flag IsHave(abs, name);if (flag ! -1) {cout 姓名 abs-personarry[flag].p_name \t;cout 性别 (abs-personarry[flag].p_sex 1 ? 男 : 女) \t;cout 年龄 abs-personarry[flag].p_age \t;cout 电话号码 abs-personarry[flag].p_phonenum \t;cout 家庭住址 abs-personarry[flag].p_addresshome endl;}else {cout 查无此人 endl;}
}//实现修改联系人的功能
void ModifyPerson(addressbooks* abs) {string name;cout 请输入要修改的联系人姓名: endl;cin name;int flag IsHave(abs, name);if (flag ! -1) {string name1;cout 请输入新姓名 endl;cin name1;abs-personarry[flag].p_name name1;while (1) {int sex;cout 请输入联系人新的性别: endl;cout 1----男 endl;cout 2----女 endl;cin sex;if (sex 1 || sex 2) {abs-personarry[flag].p_sex sex;break;}else {cout 输入有误请输入正确的性别1,2 endl;}}int age1;cout 请输入联系人年龄: endl;cin age1;abs-personarry[flag].p_age age1;string phone1;cout 请输入联系人电话号码: endl;cin phone1;abs-personarry[flag].p_phonenum phone1;string address1;cout 请输入联系人的家庭住址: endl;cin address1;abs-personarry[flag].p_addresshome address1;cout 修改该联系人成功 endl;}else {cout 该通讯录中没有此人 endl;}
}//实现清空通讯录的功能
void ClearAddress(addressbooks*abs) {int n;cout 您是否真要执行清空通讯录的功能: endl;cout 1--是 endl;cout 2--否 endl;while (1) {cin n;if (n 1 || n 2) {if (n 2) {cout 您已退出该操作未执行清空操作 endl;return;}else {abs-a_num 0;cout 该通讯录已清空 endl;return;}}else {cout 请输入正确的指令1或2: endl;}}
}