SDUT_2015寒假集訓_結構體練習_D-來淄博旅遊
阿新 • • 發佈:2019-02-15
zoucheng : skym pc beijing : plmm qq jinan : moon shanghai : von zichuan : pc qq linzi : skym zhoucun : boshan : plmm moon von 這題就是一步步的來,先把不同的from城市名按順序存在另一個數組中,然後把原from城市名與後來存的城市名一個個地比較,分類輸出,與分類遊戲那一題的感覺差不多。
程式碼
#include <stdio.h> #include <string.h> struct tourist { char name[25]; char from[25]; char to[25]; }info[10000]; int main() { int n,i,j,m=0; char s[10000][25]; char str[4][25]={"zichuan","linzi","zhoucun","boshan"}; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%s %s %s",info[i].name,info[i].from,info[i].to); for(j=0;j<m;j++) { if(strcmp(info[i].from,s[j])==0) break; } if(j==m) strcpy(s[m++],info[i].from); } for(i=0;i<m;i++) { printf("%s :",s[i]); for(j=0;j<n;j++) { if(strcmp(s[i],info[j].from)==0) { printf(" %s",info[j].name); } } printf("\n"); } for(i=0;i<4;i++) { printf("%s :",str[i]); for(j=0;j<n;j++) { if(strcmp(str[i],info[j].to)==0) { printf(" %s",info[j].name); } } printf("\n"); } return 0; }