Вывести максимальное значение суммы строки матрицы и номер этой строки - C (СИ)
Формулировка задачи:
В матрице S(mxn) вывести максимальное значение суммы строки и номер этой строки.Помогите начинающему программисту написать как можно проще.Буду рада любой помощи)
Решение задачи: «Вывести максимальное значение суммы строки матрицы и номер этой строки»
textual
Листинг программы
#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
#include <time.h>
#define N 4
#define M 4
int main( void ){
setlocale(LC_ALL,"RU");
int matr[N][M];
int maxstr=0,minstr=0,minind = 0, i, j;
srand(time(NULL));
for(i=0;i<N;i++)
for( j=0; j<M; j++ ) matr[i][j] = rand() % (10 - (-10) + 1) + (-10);
puts("Исходная матрица:\n");
for( i=0; i<N; i++ )
{
printf( "\n" );
for( j=0; j<M; j++ )
printf( "%-6d ", matr[i][j] );
}
puts("\n");
puts("Суммы элементов строк матрицы:\n");
for( i=0; i<N; i++ )
{
for( j=0; j<M; j++ )
{
maxstr += matr[i][j];
}
printf("mas[%d] = %3d\n",i,maxstr);
if(minstr < maxstr)
{
minstr = maxstr;
minind = i;
}
maxstr = 0;
}
printf("Максимальная сумма во %d-ой строке = %d\n", minind + 1, minstr);
return(0);
}
Объяснение кода листинга программы
Код выполняет следующие действия:
- Включает необходимые заголовочные файлы
- Устанавливает локальную переменную для работы с русским языком
- Создает двумерный массив с размерами N на M и заполняет его случайными числами от -10 до 10
- Выводит исходную матрицу на экран
- Пройдя по всем строкам матрицы, суммирует элементы каждой строки
- Находит максимальную сумму в строке и сохраняет номер этой строки
- Выводит на экран максимальную сумму и номер строки, на которой она была найдена
- Завершает работу программы