Упражнения на C: переставьте массив так, чтобы четные элементы индекса были меньше, а нечетные элементы индекса больше, чем их следующие
C Массив: упражнение-104 с раствором
Напишите программу на C, чтобы переставить массив так, чтобы четные элементы индекса были меньше, а нечетные элементы индекса были больше, чем их следующие.
Пример решения:
Код C:
#include<stdio.h>
void rearrange(int* arr1, int n)
{
int temp;
for (int i = 0; i < n - 1; i++)
{
if (i % 2 == 0 && arr1[i] > arr1[i + 1])
{
temp = arr1[i];
arr1[i] = arr1[i+1];
arr1[i+1] = temp;
}
if (i % 2 != 0 && arr1[i] < arr1[i + 1])
{
temp = arr1[i];
arr1[i] = arr1[i+1];
arr1[i+1] = temp;
}
}
}
void dispArray(int arr1[], int size)
{
for (int i = 0; i < size; i++)
printf("%d ", arr1[i]);
printf("\n");
}
int main()
{
int arr1[] = { 6, 4, 2, 1, 8, 3 };
int n = sizeof(arr1) / sizeof(arr1[0]);
printf("The array given is: \n");
dispArray(arr1, n);
rearrange(arr1, n);
printf("The new array after rearranging: \n");
dispArray(arr1, n);
return 0;
}
Пример вывода:
Данный массив: 6 4 2 1 8 3 Новый массив после перестановки: 4 6 1 8 2 3
Блок - схема:
Редактор кода программирования C:
Улучшите этот пример решения и опубликуйте свой код через Disqus.
Previous: написать программу на C для обновления каждого элемента массива с умножением предыдущего и следующего чисел в массиве.
Далее: Напишите программу на C, чтобы найти минимальное количество перестановок, необходимое для сбора всех элементов, меньших или равных k.
Новый контент: Composer: менеджер зависимостей для PHP , R программирования
disqus2code