Написать программу обработки двумерных массивов, используя динамическое размещение данных. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Написать программу обработки двумерных массивов, используя динамическое размещение данных.



4.1. Сформировать вектор из суммы элементов строк и найти их среднее арифметическое

4.2. Сформировать вектор из наименьших значений элементов строк и найти их среднее арифметическое.

4.3. Сформировать вектор из разностей наименьших и наибольших значений элементов столбцов.

4.4. Найти сумму элементов строки, в которой расположен наименьший элемент.

4.5. Сформировать вектор из суммы модулей отрицательных нечетных элементов в каждом столбце

4.6. Найти сумму всех элементов матрицы и заменить ею все диагональные элементы.

4.7. Получить новую матрицу путем деления всех элементов данной матрицы на ее наибольший по модулю элемент.

4.8. Заменить нулями все элементы матрицы, расположенные на главной диагонали и выше ее.

4.9. Дана вещественная матрица A(N,M). Упорядочить ее строки по неубыванию наибольших элементов в строках матрицы.

4.10. Элемент матрицы назовем седловой точкой, если он наименьший в своей строке и наибольший (одновременно) в своем столбце (или наоборот, наибольший в строке и наименьший в столбце). Для заданной целой матрицы A(N,M) напечатать индексы всех ее cедловых точек.

4.11. Определить, является ли заданная матрица A(N,N) магическим квадратом, т.е. такой, в которой сумма элементов во всех строках и столбцах одинакова.

4.12. Для заданной целой матрицы A(N,N) найти сумму наименьших элементов ее нечетных строк и наибольших элементов ее четных строк.

4.13. Сменить знак минимального элемента матрицы A(N,N), если он находится выше главной диагонали.

4.14. Сменить знак максимального элемента матрицы A(N,N), если он находится ниже побочной диагонали.

4.15. Задана целочисленная матрица A(N,N), состоящая из 0 и 1. Повернуть элементы на 90о по часовой стрелке.

4.16. В массиве A(N,M) поменять местами столбцы, содержащие максимальный и минимальный элементы.

4.17. В массиве A(N,M) поменять местами строки, содержащие максимальный и минимальный элементы.

4.18. В массиве A(N,M) удалить строку с максимальной суммой четных элементов.

4.19. В массиве A(N,M) удалить столбец с минимальным произведением элементов.

4.20. В массиве A(N,M) расположить строки в порядке возрастания их минимальных элементов


Функции пользователя

Программ на языке Си обычно состоят из большого числа отдельных функций (подпрограмм). Обычно они имеют небольшие размеры и могут находиться как в одном, так и в нескольких файлах. Предварительно функцию необходимо объявить (декларировать). Это возможно в двух формах – в форме описания и в форме определения (реализации).

Описание функции производят в начале программного файла в виде:

<тип_результата> <имя_функции>(<тип> <параметр1>, …<тип> <параметр2>);

Идентификаторы переменных в круглых скобках указывать не обязательно, но необходимо указать тип для каждого используемого функцией формального параметра. Таким образом задается прототип функции, далее в тексте программы (или в отдельном файле) следует привести полное определение функции.

Например: float fun(int, float, int, int); /* задание прототипа */

 

Полное определение функции имеет следующий вид:

<тип_результата> <имя_функции>(список параметров)

{

код функции

}

Тип результата определяет тип значения, который возвращается функцией в точку ее вызова при помощи оператора возврата return. Если тип функции не указан, то по умолчанию предполагается тип int. Список параметров состоит из перечня типов и имен параметров, разделенных запятыми. Функция может не иметь параметров, но круглые скобки необходимы в любом случае.

Оператор return вызывает немедленный выход из данной функции и возврат в вызывающую ее функцию. Этот оператор также используется для возврата результата работы функции. В теле функции может быть несколько операторов return, а может и не быть ни одного. В таких случаях возврат в вызывающую ее функцию происходит после выполнения последнего оператора. Основная функция программы (main) обычно возвращает целочисленное значение. return 0.

Пример: определить наименьшее из двух целых чисел:

int mini(int x, int y)

{ int t;

if (x<y) t=x;

else t=y;

return t;

}

Можно реализовать эту же функцию с помощью тернарного оператора:

mini(int x, int y)

{

return (x<y)? x: y;

}

По умолчанию возвращаемый результат имеет тип int.

Если функция не возвращает никакого значения, она должна быть описана как функция типа void (пустая). Если у функции отсутствует список параметров, то при объявлении такой функции в круглых скобках также указывают ключевое слово void. Например, заголовок основной функции должен выглядеть так: void main(void).

В языке Си каждая функция – это отдельный блок программы, вход в который возможен только через вызов данной функции. Вызов функции имеет следующий формат:

<имя_функции>(список_аргументов)

где в качестве аргументов можно использовать константы, переменные, выражения. Аргументы списка вызова должны полностью совпадать со списком параметров вызываемой функции по количеству, по порядку следования и по типам соответствующих им параметров. В случае отсутствия аргументов наличие круглых скобок у имени функции в точке ее вызова обязательно.

 



Поделиться:


Последнее изменение этой страницы: 2016-12-17; просмотров: 232; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.143.181 (0.007 с.)