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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2010, 12:39   #1
jimmywoodes
 
Регистрация: 24.01.2010
Сообщений: 9
По умолчанию Работа с файлами

Задание:заполнить массив данными и записать их в файл.
Язык Си.
Вроде все правильно , но при запуске выдает ошибку.
Подскажите мож чото надо добавать или убрать!
Код:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<math.h>
#include<alloc.h>
void init_data(int, int,int,int,int,int, double **);
void zapis(int, int,int,int,FILE*, double **);
void pech(int, int,int,int, double**);
int main() {
int i=0,j=0,n=8,m=5,a=-12,b=20,c;
double **mas;
FILE *wtf;
randomize();
clrscr();
mas=(double**)malloc(n*sizeof(double *));
for (i=0; i<n; i++)
mas[j]=(double*)calloc(m,sizeof(double));
init_data(n, m,i,j,a,b, mas);
printf("dvyxmernii masiv:\n");
pech(n,m,i,j,mas);
zapis(n,m,i,j,wtf,mas);
getch ();
}
void init_data(int n, int m,int i,int j,int a,int b, double **mas){
for (i=0;i<n;i++){
 for (j=0;j<m;j++)
mas[i][j]=a+(double) rand()/RAND_MAX*(b-a);}
}
void pech(int n,int m,int i,int j, double **mas){
for (i=0;i<n;i++){
 for (j=0;j<m;j++)
printf("%7.3lf  ", mas[i][j]);
printf("\n"); }
}
void zapis(int n, int m,int i,int j,FILE*wtf,double **mas){
if((wtf==fopen("text.txt", "w"))==NULL)
printf("Fail\n");
else{
for(i=0;i<n;i++){
for(j=0;j<m;j++){
fwrite(&mas[i][j],sizeof(mas[i][j]),1,wtf);}}}
return 0;
}
Вот что выдает при запуске :
заранее спс!

Последний раз редактировалось jimmywoodes; 24.01.2010 в 12:42.
jimmywoodes вне форума Ответить с цитированием
Старый 25.01.2010, 00:08   #2
BleStaR
Форумчанин
 
Регистрация: 25.09.2009
Сообщений: 234
По умолчанию

в main'e замени на:
Код:
for (i=0; i<n; i++)
        mas[i]=(double*)malloc(m*sizeof(double));
BleStaR вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с файлами СИ Stases Общие вопросы C/C++ 7 03.01.2010 14:28
рАБОТА С ФАЙЛАМИ СергейURC Общие вопросы Delphi 8 23.09.2009 15:40
Работа с файлами. tae1980 Microsoft Office Excel 3 23.05.2009 23:50
Работа с файлами Acros Помощь студентам 5 14.02.2007 18:40