//1.调整数组使奇数全部都位于偶数前面。
//
//题目:
//
//输入一个整数数组,实现一个函数,
//来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,
//所有偶数位于数组的后半部分。
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void Init(char* arr, int n){ //初始化数组
printf("请输入数组;\n");
for (int i = 0; i < 10; ++i){
scanf("%d", &arr[i]);
}
}
void InduceArray(char* arr, int n){// 实现把奇数放在前面偶数放在后面
char even[10] = { 0 }; // 奇数数组
char uneven[10] = { 0 }; //偶数数组
int i = 0;
int j = 0, z = 0;
for (; i < 10; i++){
if (arr[i] % 2){
even[j++] = arr[i];
}
else {
uneven[z++] = arr[i]; // 1 2 3 4 5 6 7 8 9 10
}
}
for (i = 0; i < j; i++){
arr[i] = even[i];
}
for (; i < n; i++){
arr[i] = uneven[i - j];
}
}
void PrintArray(char* arr, int n){ //打印数组
for (int i = 0; i < n; i++){
printf("%d ", arr[i]);
}
putchar('\n');
}
int main(){
char arr[10] = { 0 };
Init(arr,10);
InduceArray(arr, 10);
PrintArray(arr,10);
system("pause");
return 0;
}
C基础 13 1.调整数组使奇数全部都位于偶数前面。 题目: 输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组
最新推荐文章于 2023-08-02 13:38:08 发布