View Code of Problem 97

#include<stdio.h>
#include<string.h>
int main()
{
	int n;
	while(~scanf("%d",&n))
	{
		if(n==0)
		  break;
		char str[n][100];
		char bindu[n][100];
	    int k=0,i,j;
		for(i=0;i<n;i++)
		{
		  scanf("%s",str[i]);
		  int len=strlen(str[i]);
		  if(str[i][len-1]=='e'&&str[i][len-2]=='x'&&str[i][len-3]=='e'&&str[i][len-4]=='.')
		  {
		  	for(j=0;j<len-4;j++)
		  	 bindu[k][j]=str[i][j];
		  	k++;
		  }
	    }
	    int flag;
	    for(i=0;i<k;i++)
	    {
	    	flag=1;
	    	for(j=0;j<n;j++)
	    	{
	    		if(strcmp(bindu[i],str[j])==0)
	    		{
	    			flag=0;
	    			break;
				}
			}
			if(flag==1)
			{
				for(j=i;j<k;j++)
				  strcpy(bindu[j],bindu[j+1]);
				k--;
			 } 
		}
		for(i=0;i<k-1;i++)
		{
			char c[1000];
			int min=i;
			for(j=i+1;j<k;j++)
		    {
				if(strcmp(bindu[min],bindu[j])>0)
					min=j;
			}
			strcpy(c,bindu[min]);
			strcpy(bindu[min],bindu[i]);
			strcpy(bindu[i],c);
		}
		for(i=0;i<k;i++)
			puts(bindu[i]); 	
	}
}

Double click to view unformatted code.


Back to problem 97