用結構體實現乙個電話本

2021-07-13 08:32:56 字數 2579 閱讀 9606

結構體是c語言又乙個儲存資料的型別,那麼用結構體怎麼實現乙個簡單的可以儲存1000個人資訊的**本呢?

一.首先需要定義乙個結構體,包含乙個人的資訊(比如姓名,性別,年齡,**,住址等等)。我們先來定義乙個結構體。

typedef struct pdhb-info

pdhb-info;

二.需要儲存1000個人的資訊,那麼意思就是定義乙個結構體,成員為pdhb-info型別的陣列,大小是1000。

typedef struct dhb

dhb,*pdhb; //定義乙個這個結構體的指標

三.主函式如何實現

#define _crt_secure_no_warnings 1

#include#include#include"contact.h"  //新增自己寫的標頭檔案

int main()

}return 0;

}

四.標頭檔案的內容

#ifndef __contact_h__   

#define __contact_h__   定義標頭檔案

#define max_name 20

#define max_*** 3

#define max_tele 13

#define max_addr 20

#define max 1000

enum op  列舉型別

;typedef struct peo_info

peo_info;

typedef struct dhb

dhb,*pdhb;

void menu();     //函式的聲名

void init_dhb(pdhb pdhb);

void add_dhb(pdhb pdhb);

void del_dhb(pdhb pdhb);

void search_dhb(pdhb pdhb);

void modify_dhb(pdhb pdhb);

void show_dhb(pdhb pdhb);

void clear_dhb(pdhb pdhb);

void sort_dhb(pdhb pdhb);

#endif //__contact_h__

五.函式的實現

#define _crt_secure_no_warnings 1

#include#include"contact.h"

void menu()   //選單函式的實現

static int find_entry(pdhb pdhb, const char*name)  //查詢下標的函式實現

}return -1;

}void init_dhb(pdhb pdhb)   //初始化

void add_dhb(pdhb pdhb)   //新增函式的實現

printf("請輸入資訊\n");

printf("名字:->");      //向陣列元素中賦值

scanf("%s", pdhb->pinfo[pdhb->count].name);

printf("性別:->");

scanf("%s", pdhb->pinfo[pdhb->count].***);

printf("年齡:->");

scanf("%d", &pdhb->pinfo[pdhb->count].age);

scanf("%s", pdhb->pinfo[pdhb->count].tele);

printf("住址:->");

scanf("%s", pdhb->pinfo[pdhb->count].addr);

pdhb->count++;

printf("新增成功\n");

}void del_dhb(pdhb pdhb)   //刪除函式的實現

else   //用被找到的下標的後面元素直接覆蓋掉前面元素的內容

pdhb->count--;

printf("刪除成功\n");}}

void search_dhb(pdhb pdhb)   //查詢函式的實現

else  將找到下標所對應的元素輸出

}void modify_dhb(pdhb pdhb)  //改個人資訊

else    //讓重新賦值就好了

}void show_dhb(pdhb pdhb)   //展示儲存的資訊

}void clear_dhb(pdhb pdhb)  //清除**本 ,只需要將conunt設定為0;

void sort_dhb(pdhb pdhb)  //氣泡排序,排序名字}}

}

以上就是本人在學習過程中的一些經驗總結。當然,本人能力有限,難免會有紕漏,希望大家可以指正。

本文出自 「做乙個小小小司機」 部落格,請務必保留此出處

Linux下用單鏈表實現乙個電話本

完成了鍊錶的學習,我們可以嘗試寫一些小的案例練習鍊錶的操作。下面我來為大家介紹用單鏈表實現乙個簡單的 本程式。2.刪除聯絡人 3.修改聯絡人 4.查詢聯絡人 5.檢視所有聯絡人 6.清空聯絡人 而修改練習人又可能包含以下選項 1 修改姓名 2 修改性別 3 修改年齡 4 修改 號碼 5 修改位址 分...

C語言 用鍊錶實現電話本的功能

簡介 用鍊錶實現 本的功能 c語言 本具有如下4個功能 1.建立乙個 本,本裡面包含名字和 號碼 2.在指定位置插入乙個名字和 號碼 3.在指定位置刪除乙個名字和 號碼 4.列印 本 其中那個color函式是我為了美觀加上去的,如果感覺不需要的話可以將 中所有有關color的都刪掉即可 includ...

乙個結構體的示例

定義乙個結構體teacher型別,然後宣告乙個teacher陣列 teacher包含名字和資料.teacher陣列元素在堆空間開闢 然後輸入名字年齡,接下來列印輸入的內容,再然後釋放開闢堆的記憶體 如下 include stdafx.h include include include define ...