#include<stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> void sortfile(char sort[1000][17],int m){ char tmp[17]; int flag; for(int i=m-1;i>=0;i--){ flag=0; for(int j=0;j<i;j++){ if(strcmp(sort[j],sort[j+1])>0){ strcpy(tmp,sort[j]); strcpy(sort[j],sort[j+1]); strcpy(sort[j+1],tmp); flag=1; } } if(flag==0){ break; } } } void print(char sort[1000][17],int m){ for(int i=0;i<m;i++){ printf("%s\n",sort[i]); } } int main() { int n,i,j,l,m; char file[1000][17],tmp[17]; char sort[1000][17]; scanf("%d",&n); while(n!=0){ m=0; for(i=0;i<n;i++){ scanf("%s",file[i]); } for(i=0;i<n;i++){ l=strlen(file[i]); if(file[i][l-1]=='e'&&file[i][l-2]=='x'&&file[i][l-3]=='e'&&file[i][l-4]=='.'){ strcpy(tmp,file[i]); tmp[l-4]='\0'; for(j=0;j<n;j++){ if(strcmp(tmp,file[j])==0){ strcpy(sort[m++],file[i]); break; } } } } sortfile(sort,m); print(sort,m); scanf("%d",&n); } return 0; } |
Double click to view unformatted code.