Ввод матрицы MXN с клавиатуры - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток всем_)))

Нужен просто фрагмент проги для введения размерности и самих элементов матрицы. У меня в Борланде сразу после ввода выбрасывает из программы:
#include <stdio.h>
#include <stdlib.h>         //выделение динамической памяти в стиле C
#include <conio.h>
 
void main(){
 
printf (" \t\t\tЛабороторная работа №2\n\t\tПо курсу:Основы программирования \n\t\tТема:Работа с массивами\nПодготовил студент .....");
int Height(0);  //переменная задающая высоту матрицы
int Width(0);  //переменная задающая ширину матрицы
 
int *matrix = NULL;            //указатель для хранения начала матрицы
 
//Вводим количество строк и стобцов
printf("Введите количество строк и столбцов\n");
scanf("%d%d",&Height,&Width);
 
//Выделяем динамическую память под матрицу, адрес начала матрицы заносится в matrix
matrix = (int *)malloc(Height*Width*sizeof(int));
//---------------------------------------------------------------------------------

//Ввод матрицы
for(int e = 0;e<Height;e++){
    //расматриваем массив: строку
    for(int g = 0;g<Width;g++){
    scanf("%d",&matrix[e*Width+g]);
 
    }
}

Решение задачи: «Ввод матрицы MXN с клавиатуры»

textual
Листинг программы
void main()
{
int **a;
...
...
...
free(a);
}

Объяснение кода листинга программы

Вот возможное объяснение:

  1. int a;** Объявляется двумерный массив (матрица) переменных типа int.
  2. ... Некому не надо объяснять, что в этой строке что-то происходит.
  3. ... И в этой строке тоже.
  4. free(a); Вызывается функция free, которая освобождает память, выделенную под матрицу. Обратите внимание, что в коде пропущены строки считывания матрицы и вычисления результата.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.455 из 5