#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct List
{
char name[30];
int number;
struct List * next;
}cont;
void add(cont* node,cont* head)
{
node = (cont*)malloc(sizeof(cont));
printf("请输入名字");
scanf("%s", &(node->name));
printf("请输入电话号码");
scanf("%d", &(node->number));
node->next = NULL;
node->next = head->next;
head->next = node;
}
void dele(cont* head)
{
cont* pre;
printf("请输入要删除的名字");
char name2[30];
scanf("%s", name2);
if (head == NULL)
{
printf("联系人为空\n");
return;
}
pre = head;
while (strcmp(name2, head->name))
{
pre = head;
head = head->next;
if (head == NULL) printf("输入错误");
}
pre->next = head->next;
free (head);
}
void print2(cont *head)
{
if (head->next == NULL)
{
printf("空\n");
return;
}
head = head->next;
for (int i = 1;; i++)
{
printf("%d.\n姓名:%s\n电话号码:%d\n", i, head->name, head->number);
head = head->next;
if (head == NULL)break;
}
printf("------------------\n");
}
int main()
{
cont* head,* node;
head = (cont*)malloc(sizeof(cont));
head->next = NULL;
int n=5;
printf("输入1添加\n输入2删除\n输入3显示全部\n输出0则停止\n");
scanf("%d", &n);
while (n)
{
switch (n)
{
case 1:add(node,head); break;
case 2:dele(head); break;
case 3:print2(head); break;
}
printf("输入1添加\n输入2删除\n输入3显示全部\n输出0则停止\n");
scanf("%d", &n);
}
}
通讯录---C--插入--删除--查找
最新推荐文章于 2024-06-07 15:52:19 发布