АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Создание консольного приложения. Для создания текстового файла в консольном приложении используем функцию fprintf()

Читайте также:
  1. Влияние времени приложения напряжения на электрическую прочность газовой изоляции (вольт-секундная характеристика — ВСХ)
  2. Внешняя политика в царствование Александра III, создание франко-русского союза
  3. Вопрос 20. Создание специальных образовательных учреждений в дореволюционной России
  4. Г. ноябрь Создание партии «Союз 17 октября».
  5. Глава VIII. СОЗДАНИЕ ИМИДЖА
  6. Государственное и частное принуждение к исполнению правовых норм: приложения
  7. ГОСУДАРСТВЕННОЕ СТРОИТЕЛЬСТВО В РОССИИ.СОЗДАНИЕ СССР
  8. Графические приложения
  9. Другие приложения, относящиеся к общему программному обеспечению
  10. Екатерина Великая и Потемкин в истории Украины-Руси. Создание Новороссии и укрепление Малороссии
  11. Если приложения сброшюрованы, количество листов можно не указывать.
  12. Жизнь и церковная деятельность святого Саввы Сербского. Создание автокефальной Сербской Церкви. Провозглашение Сербского патриаршества.

Для создания текстового файла в консольном приложении используем функцию fprintf (). Текст программы может иметь следующий вид:

...

#include <stdio.h>

#include <io.h>

...

struct TZap{

char FIO[30];

double s_b;

} Zap;

int size = sizeof(TZap);

FILE *Fz, *Ft;

char File_Zap[] = "zapisi.dat";

char File_Rez[] = "rezult.txt";

void Out(TZap);

 

void main()

{

int kod, D_f, i=0, j, kol;

long len;

TZap st, *mas_Z;

Ft = fopen(File_Rez, "w");

while(true) {

puts("\n Create – 1\n Add – 2\n View – 3\n Sort – 4\n EXIT – 0");

scanf("%d", &kod);

switch(kod) {

case 1:

if ((Fz=fopen(File_Zap,"wb"))==NULL) {

puts("\n Create ERROR!");

return;

}

fclose(Fz);

printf("\n Create New File %s!\n",File_Zap);

break;

case 2:

Fz = fopen(File_Zap,"ab");

printf("\n F.I.O. – ");

fflush(stdin);

gets(Zap.FIO);

printf(" Ball – ");

scanf("%lf", &Zap.s_b);

fwrite(&Zap, size, 1, Fz);

fclose(Fz);

break;

case 3:

if ((Fz=fopen(File_Zap,"rb"))==NULL) {

puts("\n Open ERROR!");

return;

}

// Вывод на экран

printf("\n\t--------- Informations ---------");

 

// Запись такой же информации в текстовый файл Ft

fprintf(Ft,"\n\t--------- Informations ---------");

while(1) {

if(!fread(&Zap,size,1,Fz)) break;

Out(Zap);

}

fclose(Fz);

break;

case 4:

Fz = fopen(File_Zap,"rb");

D_f = fileno(Fz);

len = filelength(D_f);

kol = 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----- S O R T -----\n");

fprintf(Ft,"\n\t----- S O R T -----\n");

for (i=0; i < kol-1; i++)

for (j=i+1; j < kol; j++)

if (mas_Z[i].s_b > mas_Z[j].s_b) {

st = mas_Z[i];

mas_Z[i] = mas_Z[j];

mas_Z[j] = st;

}

for (i=0; i<kol; i++)

Out(mas_Z[i]);

delete []mas_Z;

break;

case 0:

fclose(Ft);

return;

}

}

}

//----------------- Функция вывода одной записи на экран и в файл --------------------

void Out(TZap z)

{

printf("\n %20s, %6.3lf.", z.FIO,z.s_b);

fprintf(Ft, "\n %20s, %6.3lf.", z.FIO, z.s_b);

}

 

Первоначально выбав пункт «1», создаем файл с именем zapisi. dat, который будет располагаться в текущем каталоге (созданной папке). Затем, выбирая пункт «2», последовательно вводим 4 записи. Выбрав пункт «3», просматриваем содержимое файла, а сортированные записи выведем на экран (запишем в файл), выбрав пункт «4». Результаты выполнения программы могут иметь вид:

 

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)