View Code of Problem 10

#include <stdio.h>
int main()
{
	int N,i,j;
	printf("input N(0<N<1000):");
	scanf("%d",&N);
	while(N--)
	{
		int a[4];
		printf("input numbers:");
		scanf("%d %d %d %d",&a[0],&a[1],&a[2],&a[3]);
		for(i=3;i>=0;i--)
		{  
			for (j=i-1;j>=0;j--)
			{
				if (a[i] == a[j])
				{ 
				    a[i] = a[i]*2;
				    a[j] = 0;
				}
			} 
		}//数字相同的情况
		for(i=3;i>=0;i--)
		{  
			if(a[i]==0)
			{
				for (j=i-1;j>=0;j--)
				{
					if (a[j] !=0)
					{ 
				        a[i] = a[j];
				        a[j] = 0;
					    j--;
					}
				}
			} 
		}//数字右移的情况
		printf("%d %d %d %d\n",a[0],a[1],a[2],a[3]);
	}	
}

Double click to view unformatted code.


Back to problem 10