#include<string.h> #include<stdio.h> #include<math.h> int main() { int n,i,j; while(scanf("%d",&n) != EOF)//取数据的组数 { if(!n) break; char s[n][20]; char s1[n][20]; char t[20]; int k = 0; for(i = 0;i < n;i++) scanf("%s",s[i]);//获取要判断的数组 for(i = 0;i < n;i++) { int l = strlen(s[i]);//数组长度 if(s[i][l-1]=='e'&&s[i][l-2]=='x'&&s[i][l-3]=='e'&&s[i][l-4]=='.')//判断是否为exe文件 { strcpy(t,s[i]);//将exe文件给t; t[l-4] = '\0';//将t 文件的后四位置空 for(j = 0;j < n;j++) { if(strcmp(t,s[j]) == 0)//如果数组和去掉exe的文件一样,那就给s1数组 { strcpy(s1[k++],s[i]); break; } } } } for(i = 0;i < k-1;i++) { for(j = k-1;j > i;j--) { if(strcmp(s1[j-1],s1[j]) > 0) { strcpy(t,s1[j-1]); strcpy(s1[j-1],s1[j]); strcpy(s1[j],t); } } } for(i = 0;i < k;i++) puts(s1[i]); } } |
Double click to view unformatted code.