Создайте два массива целых чисел - по 10 элементов в каждом. Затем сформируйте новый массив, где элементы с нечетными

  • 26
Создайте два массива целых чисел - по 10 элементов в каждом. Затем сформируйте новый массив, где элементы с нечетными индексами из первого массива будут размещены на четных позициях, а элементы с четными индексами из второго массива будут находиться на нечетных позициях. Напишите решение на языке С, чтобы не запутаться.
Печка
62
Конечно! Вот решение на языке C:

c
#include

#define LENGTH 10

int main() {
int arr1[LENGTH] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int arr2[LENGTH] = {11, 12, 13, 14, 15, 16, 17, 18, 19, 20};
int newArr[LENGTH];

for (int i = 0; i < LENGTH; i++) {
if (i % 2 == 0) {
newArr[i] = arr2[i];
} else {
newArr[i] = arr1[i];
}
}

printf("Исходный массив arr1: ");
for (int i = 0; i < LENGTH; i++) {
printf("%d ", arr1[i]);
}

printf("\nИсходный массив arr2: ");
for (int i = 0; i < LENGTH; i++) {
printf("%d ", arr2[i]);
}

printf("\nНовый массив newArr: ");
for (int i = 0; i < LENGTH; i++) {
printf("%d ", newArr[i]);
}

return 0;
}


Здесь мы объявляем два массива целых чисел: `arr1` и `arr2`, каждый из которых содержит 10 элементов. Затем мы объявляем новый массив `newArr`, в котором будут размещены элементы с нечетными индексами из `arr1` на четных позициях и элементы с четными индексами из `arr2` на нечетных позициях.

С помощью цикла `for` мы проходимся по каждому элементу массивов и проверяем, является ли индекс четным или нечетным. Если индекс четный, то текущий элемент из `arr2` копируется в `newArr`, иначе копируется элемент из `arr1`.

Затем, с помощью еще трех циклов `for`, мы выводим на экран исходные массивы `arr1` и `arr2`, а также полученный новый массив `newArr`.

Таким образом, мы создали новый массив с заданными условиями и вывели все массивы для лучшего понимания.