|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.11.2017, 19:09 | #1 |
Новичок
Джуниор
Регистрация: 28.11.2017
Сообщений: 1
|
Нужно создать файл со списками спортсменов
Я примерно сделал код,но в процессе выполнения программа вылетает.Чую что помимо этого здесь очень много ошибок.Если можете,исправьте пожалуйста.
#include <stdio.h> #include <io.h> #include <iostream.h> #include <fstream.h> #include <cstring.h> #include <conio.h> struct TZap{ char FIO[50]; int rost; int massa; } Zap; int size = sizeof(TZap); FILE *Fz , *Ft; char File_Zap[] = "zapisi.txt"; char File_Rez[] = "result.txt"; void main(int argc, char const *argv[]) { int kod,D_f,i=0,j,kol; long len; TZap st, *mas_Z; Ft = fopen(File_Rez,"w"); while(true){ puts("\n Создать -1\n Добавить - 2 \nВид - 3\n Сортировка - 4\n Выход - 0"); scanf("%d",&kod); switch(kod){ case 1: if ((Fz=fopen(File_Zap,"wb"))==NULL) { cout << "Ошибка"<<endl; return; } fclose(Fz); printf("\n Создать новый файл %s !\n",File_Zap); break; case 2: Fz = fopen(File_Zap,"ab"); printf("\nFIO -"); fflush(stdin); gets(Zap.FIO); printf("rost-"); scanf("%lf",&Zap.rost); printf("Massa-"); scanf("%lf",&Zap.massa); fwrite(&Zap,size,1,Fz); fclose(Fz); break; case 3: if ((Fz=fopen(File_Zap,"rb"))==NULL) { puts("\n Ошибка"); return; } //Вывод на экран printf("\n\t-------------Информация------------"); //запись такой же информаций в текстовый файл fprintf(Ft,"\n\t-------------Информация------------"); while(1){ if(!fread(&Zap,size,1,Fz)) break; Zap; } fclose(Fz); break; case 4: Fz = fopen(File_Zap,"rb"); D_f = fileno(Fz); len = len/size; mas_Z = new TZap[kol]; //Считываем записи из файла в динамический массив for(i=0;i<kol;i++) fread((mas_Z+i),size,1,Fz); fclose(Fz); printf("\n\t----------Сортировка-------\n"); fprintf(Ft, "\n\t-----------Сортировка------------\n"); for(i=0;i<kol-1;i++) for(j=i+1;j<kol;j++) if(mas_Z[i].massa>mas_Z[j].massa) { st = mas_Z[i]; mas_Z[i] = mas_Z[j]; mas_Z[j] = st; } for(i=0;i<kol;i++) mas_Z[i]; delete[]mas_Z; break; case 0: fclose(Ft); return; } } } //Функция вывода одной записи на экран и в файл void Out(TZap z){ printf("\n %20s,%6.3lf.",z.FIO,z.rost,z.massa) ; fprintf(Ft,"\n%20,%6.3lf.",z.FIO,z. rost,z.massa);} |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужно создать *.FLV файл (видео) | bleznec_ua | Мультимедиа в Delphi | 3 | 16.05.2011 12:45 |
нужно создать командный файл | yulya_kkkkkkk | Фриланс | 3 | 27.03.2011 16:24 |
Ребят нужно создать bat файл. не получается... | sasapot | Помощь студентам | 0 | 14.01.2011 18:24 |
при нажатии на цифру 1 нужно создать файл по адресу | 5avlyha | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 07.04.2009 16:21 |
Мне нужно создать exe файл. | andrey4623 | Общие вопросы Delphi | 1 | 14.07.2007 23:22 |