亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

用C語言實現簡易通訊錄

2020-05-23 13:32:30
字體:
來源:轉載
供稿:網友

C語言實現一個通訊錄,通訊錄可以用來存儲1000個人的信息,每個人的信息包括:

姓名、性別、年齡、電話、住址

**提供方法:

1. 添加聯系人信息
2. 刪除指定聯系人信息
3. 查找指定聯系人信息
4. 修改指定聯系人信息
5. 顯示所有聯系人信息
6. 清空所有聯系人
7. 以名字排序所有聯系人**

思路分析:

首先我們可以分三個模塊來解決這個問題,第一個模塊我們需要一個頭文件,這個頭文件里可以包含一些相應信息,當實現文件和測試文件包含自己定義的頭文件時便可以獲得一些相關的信息。所以頭文件里應該包括一個結構體,這個結構體里應包含姓名,性別,年齡,電話,住址。同時還可以定義一個結構體,這個結構體里包含通訊錄,同時通訊錄里人員的計數變量,將通訊錄的地址傳到別的地方便可以實現對它遍歷或者其他操作。
第二個模塊便是我們的測試函數,測試函數便可以實現我們的菜單打印,同時由我們接收不同的值便可以實現不同的操作,就是相應的方法的實現,這里很明顯可以通過一個switch語句來進行控制。
第三個模塊便是我們的方法實現的函數,將模塊2里定義的類型為通訊錄的地址傳到各個方法里,這樣便可以實現對通訊錄的操作。
1.linkman.h(頭文件)

 

#ifndef __LINKMAN_H__#define __LINKMAN_H__#include<stdio.h>#include<windows.h>#include<string.h>#pragma warning (disable:4996)typedef struct LINKMAN//建立結構體,存放聯系人信息{  char name[20];  char sex[10];  int age;  int tel[12];  char addr[50];}LINKMAN;typedef struct Statis //把通訊錄和人員統計放在結構體內{  LINKMAN num[1000];  int count;}Statis;void inint_linkman(Statis *p);//初始化數組void Add_linkman(Statis *p);// 添加聯系人信息void Dele_linkman(Statis *p);//刪除指定聯系人信息void Find_linkman(Statis *p);//查找指定聯系人信息void Revise_linkman(Statis *p);//修改指定聯系人信息void Display_linkman(Statis *p);//顯示所有聯系人信息void Empty_linkman(Statis *p);//清空所有聯系人 void sort_linkman(Statis *p);//以名字排序所有聯系人#endif

2.test.c(測試)

#include "linkman.h"Statis sta;void menu()//菜單{  printf("***********************************/n");  printf("********1.添加聯系人信息***********/n");  printf("********2.刪除指定聯系人信息*******/n");  printf("********3.查找指定聯系人信息*******/n");  printf("********4.修改指定聯系人信息*******/n");  printf("********5.顯示所有聯系人信息*******/n");  printf("********6.清空所有聯系人***********/n");  printf("********7.以名字排序所有聯系人*****/n");  printf("**************按0退出程序**********/n");  printf("***********************************/n");}void test(){  int i = 0;  do  {    menu();    printf("請輸入你要進行的選項:");    scanf("%d", &i);    switch (i)    {    case 1:      Add_linkman(&sta);      break;    case 2:      Dele_linkman(&sta);      break;    case 3:      Find_linkman(&sta);      break;    case 4:      Revise_linkman(&sta);      break;    case 5:      Display_linkman(&sta);      break;    case 6:      Empty_linkman(&sta);      break;    case 7:      sort_linkman(&sta);      break;    case 0:      exit(1);      break;    default:      printf("輸入錯誤/n");      break;    }  } while (i);}int main(){  inint_linkman(&sta);  test();  system("pause");  return 0;}

3.game.c(實現)

#include "linkman.h"void inint_linkman(Statis *p){  int count = sizeof(p->num);  p->count = 0;  memset(p->num, 0,count);}int Find(Statis *p, char *pname)//對于一個聯系人是否存在封裝一個函數,在后面的修改、刪除、查找可以用到{  int i = 0;  for (i = 0; i < (p->count); i++)  {    if (strcmp(p->num[i].name, pname) == 0)      return i;  }  return -1;}void menu1()//修改聯系人時所用到的菜單{  printf("*********************/n");  printf("****1.姓名*2.性別****/n");  printf("****3.年齡*4.電話****/n");  printf("****5.地址*6.返回****/n");  printf("*********************/n");}void Add_linkman(Statis *p)//添加聯系人{  printf("請輸入你要添加的聯系人姓名:/n");  scanf("%s", p->num[p->count].name);  printf("請輸入你要添加的聯系人性別:/n");  scanf("%s", p->num[p->count].sex);  printf("請輸入你要添加的聯系人年齡:/n");  scanf("%d", &(p->num[p->count].age));  printf("請輸入你要添加的聯系人電話:/n");  scanf("%s", p->num[p->count].tel);  printf("請輸入你要添加的聯系人地址:/n");  scanf("%s", p->num[p->count].addr);  if ((p->count) > 1000)  {    printf("聯系人上限/n");  }  else  {    printf("添加成功/n");    p->count++;  }}void Dele_linkman(Statis *p)//刪除聯系人{  char name[20] = { 0 };  int result = 0;  int n = 0;  int i = 0;  printf("請輸入要刪除人的姓名:/n");  scanf("%s", name);  result = Find(p, name);  if (result != -1)  {    printf("你是否要刪除該聯系人?/n");    printf("刪除請按1,不刪除請按0/n");    scanf("%d", &n);    if (n == 1)    {      for (i = 0; i < (p->count)-1; i++)      {        p->num[i] = p->num[i + 1];      }      p->count --;      printf("刪除成功/n");    }    else    {      printf("刪除失敗/n");    }  }  else  {    printf("你要刪除的聯系人不存在/n");  }}void Find_linkman(Statis *p)//查找聯系人{  char name[20] = { 0 };  int result = 0;  printf("請輸入要查找聯系人的姓名:/n");  scanf("%s", name);  result = Find(p, name);  if (result != -1)  {    printf("姓名:%s/n", p->num[result].name);    printf("性別:%s/n", p->num[result].sex);    printf("年齡:%d/n", p->num[result].age);    printf("電話:%s/n", p->num[result].tel);    printf("地址:%s/n", p->num[result].addr);  }  else  {    printf("你要查找的聯系人不存在/n");  }}void Revise_linkman(Statis *p)//修改聯系人{  char name[20] = {0};  int result = 0;  printf("請輸入你要修改聯系人的姓名:/n");  scanf("%s", name);  result = Find(p, name);  if (result != -1)  {    printf("姓名:%s/n", p->num[result].name);    printf("性別:%s/n", p->num[result].sex);    printf("年齡:%d/n", p->num[result].age);    printf("電話:%s/n", p->num[result].tel);    printf("地址:%s/n", p->num[result].addr);    int i = 0;    do    {      menu1();      printf("輸入你要修改的選項:/n");      scanf("%d", &i);      switch (i)      {      case 1:        printf("請把姓名修改成:");        scanf("%s", p->num[result].name);        break;      case 2:        printf("請把性別修改成:");        scanf("%s", p->num[result].sex);        break;      case 3:        printf("請把年齡修改成:");        scanf("%d", &(p->num[result].age));        break;      case 4:        printf("請把電話修改成:");        scanf("%s", p->num[result].tel);        break;      case 5:        printf("請把地址修改成:");        scanf("%s", p->num[result].addr);        break;      case 0:        break;      default:        printf("輸入錯誤");        break;      }    } while (i);  }  else  {    printf("你要修改的聯系人不存在/n");  }}void Display_linkman(Statis *p)//打印所有聯系人信息{  int i = 0;  printf("輸出所有人的信息:/n");  printf("%10s%7s%6s%8s%10s/n","名字","性別","年齡","電話","住址");  for (i = 0; i <(p->count); i++)  {    printf("%11s", p->num[i].name);    printf("%5s", p->num[i].sex);    printf("%5d", p->num[i].age);    printf("%10s", p->num[i].tel);    printf("%12s", p->num[i].addr);    printf("/n");  }}void Empty_linkman(Statis *p)//清空聯系人{  p->count = 0;}void sort_linkman(Statis *p)//以名字排序所有聯系人(冒泡){  int i = 0;  int j = 0;  for (i = 0; i < p->count - 1; i++)  for (j = 0; j < p->count - 1 - i; j++)  {    if (strcmp(p->num[j].name, p->num[j + 1].name)>0)    {      LINKMAN tmp;      tmp = p->num[j];      p->num[j] = p->num[j + 1];      p->num[j + 1] = tmp;    }  }}

程序運行結果部分示范:

C語言,通訊錄

到此為止,我們的簡易通訊錄就實現啦?。?!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品视频在线观看| 亚洲日韩欧美视频一区| 欧美激情精品久久久| 亚洲三级 欧美三级| 91精品在线观| 欧美日韩国产999| 久久这里有精品视频| 久久人人97超碰精品888| 国产精品91久久久久久| 欧美xxxx做受欧美| 亚洲综合日韩在线| 国产精品第一页在线| 成人欧美一区二区三区在线湿哒哒| 亚洲人成电影网| 中文字幕精品一区二区精品| 成人欧美一区二区三区黑人孕妇| 久久久久久亚洲精品| 欧洲一区二区视频| 国产精品视频在线观看| 日本在线观看天堂男亚洲| 亚洲欧美中文日韩在线| 亚洲а∨天堂久久精品9966| 97国产一区二区精品久久呦| 国模私拍一区二区三区| 日韩电影中文 亚洲精品乱码| 亚洲天堂男人天堂女人天堂| 欧美大片在线看免费观看| 亚洲欧美综合图区| 午夜伦理精品一区| 色综合久久中文字幕综合网小说| 国产欧美日韩中文字幕在线| 日韩在线欧美在线国产在线| 国产一区二区黑人欧美xxxx| 欧美俄罗斯性视频| 欧美中文字幕在线播放| 亚洲一区中文字幕在线观看| 午夜精品三级视频福利| 亚洲aⅴ日韩av电影在线观看| 91精品国产亚洲| 国产一区二区香蕉| 久久中文字幕在线视频| 亚洲精品免费在线视频| 欧美视频二区36p| 91在线无精精品一区二区| 欧美日韩ab片| 亚洲成人aaa| 国产成人一区二区在线| 日韩欧美综合在线视频| 国产精品亚洲一区二区三区| 久久视频国产精品免费视频在线| 亚洲天堂一区二区三区| 国产精品高清在线| 色先锋久久影院av| 亚洲影院色在线观看免费| 欧美亚州一区二区三区| 国产精品丝袜久久久久久高清| 日韩高清电影免费观看完整| 色噜噜国产精品视频一区二区| 亚洲精品电影在线观看| 亚洲国产精彩中文乱码av在线播放| 欧美一级免费看| 亚洲精品国产精品国产自| 91精品在线观看视频| 欧美精品aaa| 国产精品视频区| 亚洲系列中文字幕| 国产福利视频一区二区| 日韩电影免费在线观看中文字幕| 国产亚洲精品久久久优势| 国产在线观看精品| 日韩在线视频一区| 亚洲色图色老头| 欧美激情精品久久久久久| 亚洲综合在线做性| 久久精品久久久久电影| 日本国产精品视频| 欧美大片欧美激情性色a∨久久| 欧美成人中文字幕在线| 亚洲性线免费观看视频成熟| 91精品国产91久久久| 亚洲美女免费精品视频在线观看| 欧美日韩性视频在线| 伦伦影院午夜日韩欧美限制| 日韩av中文字幕在线免费观看| 国产精品久久久久久久久久东京| 狠狠躁夜夜躁人人躁婷婷91| 欧美国产日韩一区二区在线观看| 欧美亚洲国产另类| 日本一区二区三区四区视频| 97香蕉久久夜色精品国产| 黑人巨大精品欧美一区二区一视频| 国产精品久久久久9999| 久久国产精品网站| 日韩在线欧美在线| 国产激情视频一区| 日韩av三级在线观看| 亚洲第一综合天堂另类专| 深夜福利一区二区| 精品美女永久免费视频| 日韩精品视频在线| 欧美成人激情视频免费观看| 日本高清+成人网在线观看| 日韩国产一区三区| 国产盗摄xxxx视频xxx69| 欧美国产日韩一区| 亚洲综合中文字幕在线观看| 国产精品视频一区二区三区四| 91国产一区在线| 欧美日韩亚洲高清| 欧美人与物videos| 在线视频免费一区二区| 深夜福利日韩在线看| 日韩欧美成人区| 免费成人高清视频| 亚洲a∨日韩av高清在线观看| 97婷婷涩涩精品一区| 亚洲视频777| 久久精品电影网| 国产一区二区三区在线观看网站| 日韩一区av在线| 97在线视频免费播放| 精品动漫一区二区三区| 视频一区视频二区国产精品| 国产精品久久久久久av福利软件| 欧美性xxxx极品高清hd直播| 国产在线精品自拍| 欧美国产高跟鞋裸体秀xxxhd| 2019亚洲日韩新视频| 国产精品亚发布| 欧美怡春院一区二区三区| 国产日韩欧美在线观看| 久久97精品久久久久久久不卡| 亚洲色图校园春色| 久久人人爽人人爽人人片av高清| 欧美电影免费播放| 欧美高清在线播放| 亚洲偷欧美偷国内偷| 久久久精品网站| 日韩电视剧在线观看免费网站| 亚洲免费视频网站| 91久久精品国产91性色| 亚洲国产精久久久久久| 日韩亚洲综合在线| 91精品国产乱码久久久久久蜜臀| 日韩av电影在线免费播放| 国产婷婷成人久久av免费高清| 国产香蕉一区二区三区在线视频| 国产成人91久久精品| 色综合影院在线| 成人网页在线免费观看| 欧美猛交免费看| 综合久久五月天| 色一情一乱一区二区| 911国产网站尤物在线观看| 日本高清不卡的在线| 国产成人综合亚洲| 国产精品亚发布| 日韩电影中文字幕在线| 九九视频这里只有精品| 操91在线视频| 国产男人精品视频| 97国产精品人人爽人人做| 97精品国产aⅴ7777| 国产中文日韩欧美|