話不多說,直接上**。
tongxunlu.h
#ifndef _tongxunlu_h_
#define _tongxunlu_h_
#define _crt_secure_no_warnings 1
#include
#include
#include
typedef struct tongxunlu
list;
void init(list * signal); //初始化通訊錄
void all_show(list *signal); //顯示所有聯絡人資訊
void my_add(list *signal); //新增聯絡人
void my_delete(list *data,list *signal); //刪除聯絡人資訊
list * my_reserch(list *signal); //查詢聯絡人資訊
void my_remove(list *signal); //修改聯絡人資訊
void name_sort(list *signal); //聯絡人按照姓名排序
void clear_all(list *signal); //清空所有聯絡人
#endif
tongxunlu.c
#include "tongxunlu.h"
static
int tag =0; //靜態全域性變數tag,用來記錄當前通訊錄中的個數
void my_add(list *signal) //新增聯絡人
else
}list * my_reserch(list *signal) //查詢聯絡人資訊
; scanf("%s",str);
while(count<10)
signal++;
count++;
}return null;
}void my_delete(list *data,list *signal) //刪除聯絡人資訊
memset(data,0,sizeof(list));
tag--;
}void my_remove(list *signal) //修改聯絡人資訊
break;
case
2:
break;
case
3:
break;
case
4:
break;
case
5:
break;
default: printf("error!!please try again.\n"); break;
}}void all_show(list *signal) //顯示所有聯絡人資訊
}void clear_all(list *signal) //清空通訊錄,相當於初始化
}static
void swap(list * x,list * y)
void name_sort(list *signal) //聯絡人按照姓名排序
buf++;}}
for(k=0;k10-tag);//排好序後,中間不要有空白,分別移動到對應的位置
signal++;
}memset(signal,0,(10-tag)*sizeof(list));//移動後,將當前還能新增的10-tag個聯絡人記憶體空間置0
}
test.c
#include"tongxunlu.h"
void menu()
void son_menu()
void gongneng()
while(m);
break;
case
2:
doelse
printf("是否繼續刪除?是(1),否(0)\n");
scanf("%d",&m);
}while(m);
break;
case
3:
ret = my_reserch(person);
if(ret!= null)
else
break;
case
4:
doelse
printf("是否繼續修改?是(1),否(0)\n");
scanf("%d",&m);
}while(m);
break;
case
5: all_show(person); break;
case
6: clear_all(person); printf("清空聯絡人成功~~\n"); break;
case
7: name_sort(person); printf("排序成功~~\n"); break;
default: printf("enter error,please try again\n"); break;
}printf("是否回到功能頁?(1),否(0)\n");
scanf("%d",&q);
}while(q);
}int main()
}return
0;}
C語言 通訊錄管理系統(容量可變)
在實現容量可變的通訊錄之前,我們得想弄清楚一下幾個函式。malloc函式 函式原型 extern void malloc unsigned int num bytes 功能 分配長度為num bytes位元組的記憶體塊 返回值 返回值型別是void 所以我們可以把分配好的空間強制型別轉化成你要使用的...
C語言 電子通訊錄管理系統
include include define false 0 define true 1 typedef struct node data nodedata typedef struct node node void menu node s 新增好友 void newfriend node s tm...
C 通訊錄管理系統
總結一下自己的查漏補缺 1 while裡面利用乙個return 0 可以終止無限迴圈 2 主函式裡面的函式呼叫自定義函式傳入的引數用 取出位址,但是定義函式的時候利用 去接收 傳過來的位址。我之前一直弄錯。3 此類裡面利用結構體巢狀。通訊錄有很多人,每個人有名字,年齡等 因此首先定義乙個結構體儲存個...