1个回答
展开全部
int a[10];
int i,n;
printf("请输入数组元素个数:\n");
scanf("%d",&n);
for (i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
int left=0;
int sz = sizeof(a) / sizeof(a[0]);//数组元素个数
int right = sz - 1;
int tmp=0;
while (left<=right){
if ((a[left]%2==1)&&(a[right]%2==0))
{
left++;
right--;
}
else if ((a[left] % 2 == 1) && (a[right] % 2 == 1))
{
left++;
}
else if ((a[left] % 2 == 0) && (a[right] % 2 == 0))
{
right--;
}
else if ((a[left] % 2 == 0) && (a[right] % 2 ==1 ))
{
tmp = a[left];
a[left] = a[right];
a[right] = tmp;
left++;
right--;
}
}
printf("调整后数组为:\n");
For(i=0;i<n;i++)
Printf(”%d",a[i]);
system("pause");
return 0;
int i,n;
printf("请输入数组元素个数:\n");
scanf("%d",&n);
for (i = 0; i < n; i++)
{
scanf("%d", &a[i]);
}
int left=0;
int sz = sizeof(a) / sizeof(a[0]);//数组元素个数
int right = sz - 1;
int tmp=0;
while (left<=right){
if ((a[left]%2==1)&&(a[right]%2==0))
{
left++;
right--;
}
else if ((a[left] % 2 == 1) && (a[right] % 2 == 1))
{
left++;
}
else if ((a[left] % 2 == 0) && (a[right] % 2 == 0))
{
right--;
}
else if ((a[left] % 2 == 0) && (a[right] % 2 ==1 ))
{
tmp = a[left];
a[left] = a[right];
a[right] = tmp;
left++;
right--;
}
}
printf("调整后数组为:\n");
For(i=0;i<n;i++)
Printf(”%d",a[i]);
system("pause");
return 0;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询