C项目开发—通讯录(三) 删除、修改、搜索功能、源码发放
来源:互联网 发布:广州有mac专柜吗 编辑:程序博客网 时间:2024/05/19 18:11
一、删除功能
删除联系人的函数:
思路:
1> 让用户输入要删除的数据的编号
2> 判断编号是否合法
3> 让用户再次确定删除
4> 开始删除数组元素
1)删除的元素正好是数组最后一个元素,只需要让联系人-1
2)如果删除的不是数组的最后一个元素,需要移动元素,联系人-1
5> 删除文件内容
实现:
void doDelete(){printf("你选择的是删除联系人,请按提示操作 \n");// 显示出列表doList();int no;printf("请输入需要删除的联系人的编号 \n");scanf("%d", &no);// 判断是否符合 调用validateInput方法 // true表示validateInput返回值是1if (validateInput(no, 1, totalContactCount)){return ; // 不合法的话不往下执行率}// 确定删除int flag;printf("你确定要删除联系人么(删除之后无法恢复)?1.确定 0.取消 \n");scanf("%d", &flag);if (flag){// 判断删除的元素是不是最后一个if (no == totalContactCount){totalContactCount--;// 不过最后一个还是占用内存} else{for (int i = no; i < totalContactCount; i++){contacts[i-1] = contacts[i];}// 总人数-1totalContactCount--;}}}
演示:
二、 修改联系人修改联系人信息
思路:
1> 让用户输入要修改的联系人的编号
2> 判断编号是否合法
3> 让用户输入新的姓名,电话
4> 确定?
5> 开始修改联系人信息
6> 更新到文件中
实现:
void doAmend(){printf("你选择的是修改联系人,请按提示操作 \n");// 首先显示联系人doList();int no;printf("请输入需要修改的联系人的编号 \n");scanf("%d", &no);// 判断编号是否合法 1 - totalContactCountif (validateInput(no, 1, totalContactCount)){return ;}// 编号正确的话// 提示用户输入新用户名, 并接收// 保存char name1[NAMELEN];char tel[NUMLEN];printf("请输入联系人姓名(*注意联系人姓名中间不能有空格) \n");scanf("%s", name1);// 提示用户输入电话号码, 并接收printf("请输入电话号码(*注意联系人姓名中间不能有空格)\n");scanf("%s", tel);// 确定修改int flag;printf("你确定要修改联系人么(确定后信息将修改)?1.确定 0.取消 \n");scanf("%d", &flag);if (flag){// 确定修改,更新数组strcpy(contacts[no - 1].name, name1);strcpy(contacts[no - 1].telNum, tel);}// 写入到文件中, 同步更新到文件中 WriteFile();}演示:
三、搜索联系人
搜索联系人信息
思路:
1> 提示用户输入要查找的联系人的姓名
2> 遍历数组,查找是否有这个人
1)输入的姓名和contacts[i].name 比较
2)搜索不到 遍历一遍都没有这个联系人,提示查找不到;
3> 查找到了,显示电话号码
4> 没查找到,提示没有这个人
实现:
void doSearchByName(){printf("你选择的是搜索联系人,请按提示操作 \n");// 输入联系人姓名printf("请输入联系人姓名 \n");char name2[NAMELEN]; // 暂时保存输入的联系人的名称scanf("%s", name2);int i;for (i = 0; i < totalContactCount; i++){// if (contacts[i].name = name2) 字符串比较不能这个if (strcmp(name2, contacts[i].name) == 0){// 打印出来联系人的电话号码printf("你搜索的联系人 %s 的电话号码是:%s \n", name2, contacts[i].telNum);break; // 循环停止}}if (i == totalContactCount){printf("对不起,找不到该联系人");}}
演示:
源码地址:http://download.csdn.net/detail/haojie2014/9265145
0 0
- C项目开发—通讯录(三) 删除、修改、搜索功能、源码发放
- C项目开发—通讯录(二) 初始化、查看、添加功能实现
- Android通讯录开发之通讯录联系人搜索功能最新实现
- Android通讯录开发之通讯录联系人搜索功能最新实现
- 用c语言实现 一个通讯录(实现 增加、删除、查找、修改、显示、清空功能)
- Android通讯录开发之实现删除功能
- 通讯录搜索功能
- 十七. 增加一个项目协作留言板功能(三)----- 增加任务的修改和删除功能
- Android通讯录开发之通讯录联系人搜索功能最新实现5
- 类似于通讯录的搜索功能
- 通讯录源码--C语言
- 用C语言模拟实现一个通讯录,要求实现其添加、删除、修改、查找、显示和排序联系人信息的功能
- C语言项目——通讯录
- Extjs4---grid的搜索、修改、删除功能---结合struts2、hibernate
- C项目 实现通讯录
- c语言通讯录项目
- iOS项目开发小技巧 (三) --UITableView实现Cell左划删除等自定义功能
- 汇编实现的简单的通讯录系统,有插入,修改,删除,打印,查找功能
- 一方库、二方库、三方库
- perl 分析binlog 生成update sql
- Android 的服务-Service
- C语言
- GUI布局学习1
- C项目开发—通讯录(三) 删除、修改、搜索功能、源码发放
- eclipse dynamic web project pom.xml配置
- Double.NaN和Float.NaN
- JAVA8 十大新特性详解
- 日期转换 NSDate 格式 格林尼治时间 时差
- 使用csc.exe构建C#应用程序
- vhdl的描述
- Java Map遍历方式方式及性能测试
- dom4j中selectNodes无法获得节点