View Code of Problem 22

#include<stdio.h>
#include<string.h>

int main(){
	int i,j,k,len1,len2,n;
	char str1[1000],str2[1000],x[1000],t;
	while(gets(str1))
	{
	   gets(str2);
	   len1=strlen(str1);
	   len2=strlen(str2);
	   for (k=i=0;i<len1;i++)
	   {
		   for (j=0;j<len2;j++)
			   if (str1[i]==str2[j])
			   {
				   x[k++]=str2[j];
				   for (n=j+1;n<len2;n++)
				      if (str2[n]==str2[j])
						  str2[n]='1';
				   break;
			   }
	/*		for (n=i+1;n<len1;n++)
				   if (str1[n]==str1[i])
						  str1[n]='2';*/
		}
	  for  (i=0;i<k-1;i++)
         for (j=k-1;j>i;j--)
			 if (x[j]<x[j-1])
			 {  t=x[j];x[j]=x[j-1];x[j-1]=t;} //冒泡;
  
	   for (i=0;i<k-1;i++)
		   printf("%c",x[i]);
	       printf("%c\n",x[i]);

	}
	return 0;
}

Double click to view unformatted code.


Back to problem 22