結構體——使用結構體實現資訊查詢
阿新 • • 發佈:2019-01-09
使用結構體實現資訊查詢
/*************************************** 功能:使用結構體實現資訊查詢 日期:2014年12月10日14:46:02 **************************************/ #include<stdio.h> #include<string.h> #define MAX 101 struct aa//定義結構體aa用來儲存電話號碼和姓名 { char name[15]; char tel[15]; }; int readin(struct aa *a)//建立電話號碼和姓名,並存入結構體中 { int i = 0, n = 0; while(1) { scanf("%s",a[i].name);//輸入姓名 if (!strcmp(a[i].name, "#")) break; scanf("%s",a[i].tel);//輸入電話號碼 i++; n++; //記錄的條數 } return n; //返回的條數 } void search(struct aa *b, char *x, int n)//用來查詢輸入的姓名所對應的電話號碼 { int i = 0; while(1) { if (!strcmp(b[i].name, x)) //查詢與輸入姓名相匹配的記錄 { printf("name:%s tel:%s\n", b[i].name,b[i].tel );//列印查到的姓名所對應的電話號碼 break; //終止當前的動作 } else i++; n--; if (n == 0) { printf("No found!"); break; } } } int main() { struct aa s[MAX];//定義了一個結構體陣列,長度為101 int num; char name[15]; num = readin(s);//呼叫函式 readin() ,建立(姓名+電話)資訊的個數 printf("input the name:"); scanf("%s",name); search(s, name, num); return 0; } /***************************** qwe 133321654 qaz 3254562 wsx 369541102 # input the name:wsx name:wsx tel:369541102 Press any key to continue ******************************/