单向循环链表 通讯录

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define T 1
#define F -1

typedef int Boolean;
typedef char Elementname;
typedef char Elementadd;

struct Node
{
    Elementname name[20];
    char number[20];
    Elementadd address[20];
    struct Node* next;
};
int quit = 1;
typedef struct Node* node;
node list = NULL; 

Boolean insert_tail(node list);
Boolean delete_index(node list, int index);
Boolean delete_name(node list, Elementname* name);
Boolean delete_number(node list, Elementname* number);
Boolean update_index(node list, int index, Elementname *name, char *number, Elementadd *address);
void update_name(node list, Elementname *old_name, Elementname *new_name);
void update_number(node list, char *old_number, char *new_number);
Boolean query_index(node list, int index);
void query_name(node list, Elementname* name);
void query_number(node list, char* number);
int input_user(Elementname* name, char* number, Elementadd* address);
void rank_name(node list);
void rank_number(node list);
int init(node* list);
int length(node list);
void print(node list);
void show_function();
int Meau();

int main()
{  
   show_function();
   while(quit)
   {
       Meau();
   }
    return 0;
}

void show_function()
{
printf ("\n\n\n\n\n\n\n");
 55     printf ("\t\t\t     【通讯录】\n");
 56     printf ("================================================================================\n");
 57     printf ("\t\t\t\t**************\n");
 58     printf ("\t\t\t\t*0.初始化用户*\n");
 59     printf ("\t\t\t\t*1.添加用户*\n");
 60     printf ("\t\t\t\t*2.显示用户*\n");
 61     printf ("\t\t\t\t*3.按通讯录序号删除 *\n");
 62     printf ("\t\t\t\t*4.按通讯录姓名删除*\n");
 63     printf ("\t\t\t\t*5.按通讯录号码删除*\n");
 64     printf ("\t\t\t\t*6.按通讯录序号查询*\n");
 65     printf ("\t\t\t\t*7.按通讯录姓名查询*\n");
 66     printf ("\t\t\t\t*8.按通讯录号码查询*\n");
 67     printf ("\t\t\t\t*9.按通讯录序号修改*\n");
 68     printf ("\t\t\t\t*A.修改姓名*\n");
 69     printf ("\t\t\t\t*B.修改号码*\n");
 70     printf ("\t\t\t\t*C.按姓名-由小到大排序*\n");
 71     printf ("\t\t\t\t*D.按号码-由大到小排序*\n");
 72     printf ("\t\t\t\t*Q. quit*\n");
 73     printf ("\t\t\t\t**************\n");
 74     printf ("================================================================================\n");
 75 
 76 }
 77 
int Meau()
{
    char name[20], number[20], address[20], old_name[20], new_name[20], old_number[20], new_number[20];
    int index, i, L;
    char a;
    printf("function :");
    scanf ("%s", &a);
    sw
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值