資料結構8-順序查詢的例項
阿新 • • 發佈:2019-01-31
程式實現用一個結構體陣列存放學生的記錄,用順序查詢輸出1001編號學生的具體資訊,程式碼如下所示:
#include"stdio.h" typedef struct student{ int id; /*學生編號*/ char name[10]; /*學生姓名*/ float score; /*成績*/ }Student; int search(Student stu[],int n,int key){ int i; for(i=0;i<n;i++) if(stu[i].id==key) /*查詢成功*/ return i; return -1; /*查詢失敗*/ } main() { Student stu[4]={{1004,"TOM",100}, {1002,"LILY",95}, {1001,"ANN",93}, {1003,"LUCY",98} }; /*初始化結構體陣列*/ int addr; /*要查詢的記錄的地址*/ addr = search(stu,4,1001); printf("Student ID: %d\n",stu[addr].id); /*輸出查詢到的記錄的資訊*/ printf("Student name: %s\n",stu[addr].name); printf("Student score: %f\n",stu[addr].score); getche(); }
實現的結果如圖所示: