Пример. Сформировать матрицу A (10,10) следующего вида
#include <stdio.h>
#include <conio.h>
void main ()
{ const int N=10;
static int a[N][N]; //статический массив инициализируется
//нулями
for (int i=0; i<N; i++)
for (int j=0; j<N; j++)
if (i>=j) a[i][j]=i-j+1; //условие попадания под главную диагональ
for (int i=0; i<N; i++) // печать матрицы
{
for (int j=0; j<N; j++) printf("%2d", a[i][j]);
printf("\n");
}
getch();
}
Можно уменьшить количество повторений в цикле и избавиться от проверок в операторе IF, если фрагмент заполнения матрицы записать следующим образом:
for (i=0; i<N; i++)
for (j=0; j<i; j++)
a[i][j]=i–j+1
Сгенерировать случайным образом квадратную матрицу размерности K<20. Найти сумму ее элементов, находящихся на диагонали, «ортогональной» главной.
1. Дана прямоугольная матрица A (N, M) (N M, M 15). Найти произведение элементов каждой строки матрицы. Сформировать массив B из найденных произведений.
2. Дана прямоугольная матрица A (N, M) (N M, M 15). Найти максимальный элемент в каждой строке. Сформировать массив B из найденных элементов.
3. Дана прямоугольная матрица A (N, M) (N M, M 15). Преобразовать матрицу таким образом, чтобы на месте первой строки находилась вторая, на месте второй – третья, и т.д., а на месте последней – первая.
|
|
4. Дана прямоугольная матрица A (N, M) (N M, M 15) и искомое число k. Найти все имеющиеся в матрице числа k и их позиции. Если таких элементов нет, то выдать соответствующее сообщение.
5. Сформировать и распечатать квадратную матрицу А (10,10) следующего вида:
6. Сформировать и распечатать прямоугольную матрицу A (10,20) следующего вида:
7. Сформировать и распечатать квадратную матрицу A (12,12) следующего вида:
8. Сформировать и распечатать квадратную матрицу A (15,15) следующего вида:
9. Сформировать и распечатать квадратную матрицу A (15,15) следующего вида:
10. Сформировать и распечатать квадратную матрицу размерности M <20 следующего вида:
11. Сформировать и распечатать квадратную матрицу A (15,15) следующего вида: