動態開闢記憶體:
tellist.h
#ifndef __tellist_h__
#define __tellist_h__
#define name 10
#define *** 5
#define tel 12
#define addr 20
#define max 50
typedef struct people
peo,*peo;
typedef struct con
peocon,*con;
void start(con peo);
void add_peo(con peo);
void del_peo(con peo);
void sel_peo(con peo);
void mod_peo(con peo);
void show_peo(con peo);
void empty_peo(con peo);
void sort_peo(con peo);
#endif
fun.c
#define _crt_secure_no_warnings 1
#include#include#include#include"tellist.h"
//初始化
void start(con peo)
//動態開闢
void mem_play(con peo)
}//新增聯絡人資訊
void add_peo(con peo)
else }
//刪除
int find(char *c, con peo)
return -1;
}void del_peo(con peo)
peo->count--;
printf("刪除成功!\n");
}//查詢
void sel_peo(con peo)
//修改
void mod_peo(con peo)
//顯示所有聯絡人資訊
void show_peo(con peo)
}//清空
void empty_peo(con peo)
//排序
int swap_string(const void *elem1, const void *elem2)
//void sort_peo(con peo)
#define _crt_secure_no_warnings 1
#include#include#include#include"tellist.h"
//通訊錄
enum op
;//動態開闢
void menu()
int main()
} system("pause");
return 0;
}
檔案版:
#ifndef __tellist_h__
#define __tellist_h__
#define _crt_secure_no_warnings 1
#include#include#include#define name 10
#define *** 5
#define tel 12
#define addr 20
#define max 50
typedef struct people
peo,*peo;
typedef struct con
peocon,*con;
void start(con peo);
void add_peo(con peo);
void del_peo(con peo);
void sel_peo(con peo);
void mod_peo(con peo);
void show_peo(con peo);
void empty_peo(con peo);
void sort_peo(con peo);
//檔案寫入
void write_file(con position);
//檔案讀取
void read_file(con peo);
//修改檔案
void mod_file(con position, char* name, int flag);
#endif
fun.c
#include"tellist.h"
extern char file_name[30] = "\0";
void write_file(con peo)
else
fprintf(list, "%-10s", peo->num[peo->count].name);
fprintf(list, "%-6s", peo->num[peo->count].***);
fprintf(list, "%2d", peo->num[peo->count].age);
fprintf(list, "%-8s", peo->num[peo->count].tel);
fprintf(list, "%-10s", peo->num[peo->count].addr);
fprintf(list, "%s", "\n");
} else
fclose(list);
}//讀取檔案
void read_file(con peo)
else }
}//修改
void mod_file(con peo, char *name, int i)
else
break;
} fclose(list);
list = fopen(file_name, "r+");
fseek(list, num1, seek_set);
if (i == 0)
else
fclose(list);
}//初始化
void start(con peo)
//動態開闢
void mem_play(con peo)
}//新增聯絡人資訊
void add_peo(con peo)
else }
//刪除
int find(char *c, con peo)
return -1;
}void del_peo(con peo)
peo->count--;
printf("刪除成功!\n");
}//查詢
void sel_peo(con peo)
//修改
void mod_peo(con peo)
//顯示所有聯絡人資訊
void show_peo(con peo)*/}
//清空
void empty_peo(con peo)
main.c
#include"tellist.h"
char file_name[30];
//通訊錄
enum op
;//動態開闢
void menu()
int main()
} system("pause");
return 0;
}
通訊錄動態版(動態記憶體開闢)
實現乙個通訊錄 通訊錄可以用來儲存1000個人的資訊,每個人的資訊包括 姓名 性別 年齡 住址 提供方法 1.新增聯絡人資訊 2.刪除指定聯絡人資訊 3.查詢指定聯絡人資訊 4.修改指定聯絡人資訊 5.顯示所有聯絡人資訊 6.清空所有聯絡人 7.以名字排序所有聯絡人 define crt secur...
動態通訊錄(動態記憶體開闢)(C語言)
鑑於上次的通訊錄我介紹的比較詳細,我這次的介紹簡單一點。ifndef message h define message h include include include include include define max 1000 最大1000位聯絡人 define name max 20 名字...
通訊錄動態開闢版本
contact.h include include include ifndef cntact h define cntact h define name max 20 define max 4 define tel max 12 define addr max 50 define default ...