Несколько доп. задач на работу с массивами через указатели:
По просьбе некоторых участников предлогаются доп.задачи на работу с массивами через указатели. Решать их совсем не обязательно, но для тех, кто решит, правила такие
Все задачи этохо набора решите, пожалуйста, с помощью указателей (без использования выражений вида a[i]).
И также без использования выражений вида *(a+i).. :).
1. Напишите две очень простые функции. Одна заполняет данный массив длины n нулями. Вторая копирует одни массив длинны n в другой.
Все нассивы передаются в параметрах, результат у обеих функций должен
быть void.
Пример вызова м.б. таким:
int a[10];
clear(a, 10); // заполнить массив a длинны 10 нулями
int b[10];
copy(b, a, 10); // Скопировать 10 чисел из массива a в нассив b
2. В данном массиве из 10 чисел найдите максимальный элемент и увеличите его в два раза.
(Можно считать, что мы точно знаем, что максимальный элемент в массиве один).
3. Для данного массива из 10 чисел проверить, есть ли в нем два одинаковых числа и напечатать "да" или "нет".
4. В данном массиве из 10 чисел все нули переписать в конец массива. Например, если в массиве сначала были числа 0, 2, 7, 0, 8, 0, 0, 4, 2, 0, то после обработки дложны оказаться числа 2, 7, 8, 4, 2, 0, 0, 0, 0, 0.