Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.10.2019, 21:43   #1
Snoliry
Пользователь
 
Аватар для Snoliry
 
Регистрация: 04.10.2019
Сообщений: 10
По умолчанию Правильно ли написан код для вывода матрицы из файла ?

Файл был создан.Код написан си.Сам код
Код:
#include <conio.h>
#include <stdio.h>
#include <alloc.h>
main
{
int i,j,**a,*x,k,r,n,m;
FILE *in;
clrscr();
in=fopen("Mat.dat","r");
printf("\nWrite n ");
scanf("%d",&n);
printf("\nWrite m ");
scanf("%d",&m);
x=(int*)malloc(n*sizeof(int));
s=(int*)malloc(m*sizeof(int));
a=(int**)malloc(n*sizeof(int*));
for(i=0;i<n;i++)
a[i]=(int*)malloc(m*sizeof(int));
for(j=0;j<m;j++)
fscanf(in,"%d",&a[i][j]);
printf("\nMat a ");
printf("\n________________\n");
for(i=0;i<m;i++)
{
for(j=0;j<m;j++)
printf("%5d",a[i][j]);
printf("\n");
}
getch();
}

Скрин программы после запуска кода во вложениях.
Вопрос, как сделать нормальную матрицу, а не просто строчку цифр?
Кто может, распишите подробно где у меня ошибки и посоветуйте материалы для изучения си.
Заранее спасибо.
Изображения
Тип файла: png Безымянный.png (7.8 Кб, 53 просмотров)
Snoliry вне форума Ответить с цитированием
Старый 11.10.2019, 21:52   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Память выделяете nxm, а бегаете как mxm
Код:
for(j=0;j<m;j++)
fscanf(in,"%d",&a[i][j]);
Чему тут i равно?
p51x вне форума Ответить с цитированием
Старый 11.10.2019, 22:01   #3
Snoliry
Пользователь
 
Аватар для Snoliry
 
Регистрация: 04.10.2019
Сообщений: 10
По умолчанию

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

Цитата:
Сообщение от p51x Посмотреть сообщение
Чему тут i равно?
вы имеете в виду эту часть кода?
Цитата:
Сообщение от p51x Посмотреть сообщение
fscanf(in,"%d",&a[i][j]);
Snoliry вне форума Ответить с цитированием
Старый 11.10.2019, 23:03   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Вы думаете я специально выделил другой кусок кода?
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Код правильно написан? Не выводит на экран katerubak Помощь студентам 4 06.01.2017 20:39
Правильно ли написан алгоритм нахождения минимального числа в каждой строке матрицы? DANILICH Общие вопросы C/C++ 2 06.05.2016 10:05
С++, Функция вывода матрицы на экран fantomasje Помощь студентам 4 03.06.2013 17:12
Правильно написан алгоритм? ming_ruport Помощь студентам 5 17.10.2011 16:34
Как правильно записать код юникодного символа 0xAD программно для вывода? SkAndrew Общие вопросы Delphi 4 08.11.2008 08:55