PTA 调整数组使奇数全部都位于偶数前面其他数字顺序不变

目录

题目:

源代码:

思路一

思路二


题目:

输入一个长度不超过10的数字字符串,调整数组使奇数全部都位于偶数前面其他数字顺序不变。

输入格式:

例如输入“0123456789”

输出格式:

输出“1357902468”

输入样例:

在这里给出一组输入。例如:

0123456789

输出样例:

在这里给出相应的输出。例如:

1357902468

源代码:

思路一

#include<stdio.h>
#include <string.h>
int main()
{
	char arr1[11],arr2[11];
	int t;
	gets(arr1);
	int p;
	int num=0;
	p=strlen(arr1);
	for(int i=0;i<p;i++)
	{
		t=arr1[i]-'0';
		if(t%2!=0)printf("%d",t);
		else
		{
			arr2[num]=arr1[i];
			num++;
		}
	}
	for(int i=0;i<num;i++)
	{
		printf("%c",arr2[i]);
	}
}

思路二

#include<stdio.h>
#include<string.h>
int main()
{
	char arr1[11];
	char arr2[11];
	int arr3[11];
 	int i=0,k=0,sum=0,t=0;
    gets(arr1);
    i=strlen(arr1);
 	for (k = 0; k < i; k++)
 	{
 		if (arr1[k] % 2 == 1)
  		{
   			arr2[sum] = arr1[k];
   			sum++;
  		}
 	}
 	for (k = 0; k < i; k++)
 	{
		if (arr1[k] % 2 == 0)
		{
			arr2[sum] = arr1[k];
			sum++;
		}
	}
	for (k = 0; k < i; k++)
	{
		printf("%c", arr2[k]);
	}
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_60960413/article/details/122149472