小项目:通讯录系统要求:存储联系人信息姓名,性别,电话最大存储量 50 功能:1,增加联系人2,删除联系人(按人名)3,修改联系人(按人名)4,查找联系人(模糊查找)5,显示所有联系人信息6,退出系统
#include <stdio.h>
#include <getch.h>
#include <string.h>
#include <stdlib.h>char name_str[50][20]={};//姓名所在二维数组
char sex_str[50][4]={};//性别所在二维数组
char tel_str[50][15]={};//电话所在二维数组void add_contacts(void);//添加用户
void delete_contacts(void);//删除用户
void modify_contacts(void);//修改用户
void lookup_contacts(void);//查找用户
void display_contacts(void);//查看电话簿
void display(void);//显示菜单
void delete_contacts(void)
{system("clear");char name[20]={};printf("请输入需要删除信息的姓名:");scanf("%s",name);for(int i=0;i<50;i++){if(name[0] == *name_str[i]){*name_str[i]=0;*sex_str[i]=0;*tel_str[i]=0;printf("删除成功\n");sleep(1);break;}}printf("没有找到相应姓名");
}
void modify_contacts(void)
{system("clear");char name[20]={};printf("请输入需要修改信息的姓名:");scanf("%s",name);for(int i=0;i<50;i++){if(name[0] == *name_str[i]){printf("请输入姓名:");scanf("%s",name_str[i]);printf("请输入姓别:");scanf("%s",sex_str[i]);printf("请输入电话:");scanf("%s",tel_str[i]);printf("修改成功\n");sleep(1);break;}}printf("这个人不存在\n");
}
void lookup_contacts(void)
{system("clear");char flag[20]={};printf("请输入需要查找的信息:");scanf("%s",flag);for(int i=0;i<50;i++){if(NULL != strstr(name_str[i],flag) || NULL != strstr(tel_str[i],flag)){printf("%s\t",name_str[i]);printf("%s\t",sex_str[i]);printf("%s\n",tel_str[i]);  }}printf("按任意键返回菜单\n");getch();getch();
}
void display_contacts(void)
{system("clear");for(int i=0;i<50;i++){if(0 == *name_str[i]) continue;printf("%s\t",name_str[i]);printf("%s\t",sex_str[i]);printf("%s\n",tel_str[i]);}printf("按任意键 返回菜单");getch();
}
void display(void)
{printf("--------电话簿系统--------\n");printf("1,增加联系人\n");printf("2,删除联系人(按人名)\n");printf("3,修改联系人(按人名)\n");printf("4,查找联系人(模糊查找)\n");printf("5,显示所有联系人信息\n");printf("6,退出系统\n");
}
void add_contacts(void)
{system("clear");for(int i=0;i<50;i++){ if(0 == *name_str[i]){printf("请输入姓名:");scanf("%s",name_str[i]);printf("请输入姓别:");scanf("%s",sex_str[i]);printf("请输入电话:");scanf("%s",tel_str[i]);printf("添加成功\n");sleep(1);break;}}printf("添加失败,电话簿已满,请按任意键回到菜单");getch();
}int main(int argc,const char* argv[])
{for(;;){system("clear");display();switch(getch()){case 49: add_contacts();break;case 50:delete_contacts();break;case 51: modify_contacts();break;case 52: lookup_contacts();break;case 53: display_contacts();break;case 54: return 0;}}
}

浅学C++(3)学习C语言(电话簿)相关推荐

  1. 成都学python_成都学习Python语言前景如何?

    原标题:成都学习Python语言前景如何? Python编程语言不仅是开发人工智能的理想伴侣,更是零基础者走进编程世界的绝佳选择.随着人工智能的火爆发展,Python语言的拥趸增长数倍,已经成为现阶段 ...

  2. 前辈学习C语言的四种方法,实际上不管学什么语言,都行之有效!

    如果新手要学习编程,一些学长学姐都会建议从Python.PHP.Java开始学. 不过,作为工作多年的一名程序员,我还是建议你从C语言开始,为什么这么说,我相信你以后会慢慢的明白. 那么,如何学习C语 ...

  3. 学java语言之前学什么利于学习?

    想学Java的同学不在少数,其中有少部分同学可以通过大学科班进行学习,大多数同学只能通过自学或者系统学习入行,自学的同学都想知道在学习之前要不要学什么其他知识,今天小千就来给大家介绍一下. 学Java ...

  4. c语言不定长数组_学习C语言这三块“硬骨头”不搞定学了也是白学

    C语: C语言在嵌入式学习中是必备的知识,审核大部分操作都要围绕C语言进行,而其中有三块"难啃的硬骨头"几乎是公认级别的. 01指针 C语言 指针公认最难理解的概念,也是让很多初学 ...

  5. 「大学生学编程系列」第六篇:如何学习C语言?

    现在很多人初学者直接选择C语言的人已经变得越来越少了,主要原因还是在招聘岗位数量上无法和java,php等高级语言想媲美,但并不代表C语言已经穷途末路没有前景了,C语言的角色从前台变成了后台服务,在一 ...

  6. 自学python能学成吗-没有任何编程基础可以直接学习python语言吗?学会后能够做什么?...

    很明确的说 python非常适合没有任何编程基础的人入门.. 目前应用最多的:全栈开发.数据分析.运维开发,今天我们就以这三个重点的岗位来做一下自学Python的规划,希望你在学之前就能有结果的来走得 ...

  7. 零基础怎么学c语言,如何零基础学习c语言?

    这个问题笔者回答过,首先在重申一下零基础不适合学C语言,不适合,不适合! 要学会通C语言你知道底层的管理么?计算机的体系结构学过么?OS底层的支持呢?硬件相关知识?,当然根据你描述你是基本一点概念都没 ...

  8. 很多人大一就开始学习C语言,你真的学到了吗?

    好多人大一就学了C语言,但你有没有感觉学的不深,不扎实.或者说越学越迷茫,不知道它能做什么 我相信,这可能是很多朋友的问题,其实,这是很多初学者都会踩到的一个坑!C语言本身是一门很简单的语言,提供的实 ...

  9. 单片机c语言执行从什么开始,学习C语言从什么开始学起

    我来说说我的学习经验,说句实在话我真正学会C语言是从开始学习单片机开始的,以前在上学时也学过C语言,由于只是应付考试,没有深入去学习,当时只是学习了C语言的一些皮毛没有领会C语言的精髓.后来由于工作的 ...

最新文章

  1. LeetCode01_二分法专题
  2. php 清空输入缓存,用PHP清理用户输入的最佳方法是什么?
  3. 移动项目开发笔记(管理不同解决方案下的DLL文件相互引用之心得体会)
  4. BZOJ2957楼房重建
  5. 使用C#如何写入/读取注册表信息
  6. “鱼”和“熊掌”也能兼得——省时省心
  7. iOS蓝牙链接打印机的使用心得
  8. 抖音推独立社交产品“多闪” 主打视频社交PK微信
  9. phpmyadmin java_phpMyAdmin的配置
  10. 服务器都是sas硬盘吗,服务器硬盘SAS与SATA区别介绍
  11. 【玩转数据系列十五】机器学习PAI为你自动写歌词,妈妈再也不用担心我的freestyle了(提供数据、代码)
  12. 晚还款没事,各行信用卡容时容差服务大汇总!
  13. GB/T 20984-2022《信息安全技术 信息安全风险评估方法》解读
  14. [虚拟机] 如何让VMware上的虚拟机识别到U盘
  15. VMI - 供应商管理库存
  16. 2021.11.8-11.14 AI行业周刊(第71期):AI行业经验
  17. Office2010 把多个excel合并成一个
  18. 过滤器Filter方法详解(init,doFileter,destory)
  19. 《孙子兵法战略运筹之始计篇》
  20. springboot文件上传和下载(批量/单个)

热门文章

  1. PHP获取用户的真实ip地址
  2. 请问投稿中要求上传的author_投稿须知Author lnstruction 解读(中)
  3. OPPOR9plusmA_官方线刷包_救砖包_解账户锁
  4. 快速对齐word中目录的页码|容易上手的方法
  5. 微信小游戏申请注册流程+开发微信小游戏类目需要具备条件
  6. 有效的运营技巧让中国卖家在跨境电商领域销量翻番
  7. 智慧城市物联网主要技术路线
  8. mysql执行计划extra_四、MySQL优化之explain执行计划的extra属性
  9. 课程设计 --- 黑白棋中的 AI
  10. 微软C++团队将出席ACCU 2021