Студопедия Главная Случайная страница Обратная связь

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

Создание консольного приложения





Для создания текстового файла в консольном приложении используем функцию 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». Результаты выполнения программы могут иметь вид:







Дата добавления: 2014-11-10; просмотров: 474. Нарушение авторских прав; Мы поможем в написании вашей работы!




Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Закон Гука при растяжении и сжатии   Напряжения и деформации при растяжении и сжатии связаны между собой зависимостью, которая называется законом Гука, по имени установившего этот закон английского физика Роберта Гука в 1678 году...

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

Этапы и алгоритм решения педагогической задачи Технология решения педагогической задачи, так же как и любая другая педагогическая технология должна соответствовать критериям концептуальности, системности, эффективности и воспроизводимости...

Виды сухожильных швов После выделения культи сухожилия и эвакуации гематомы приступают к восстановлению целостности сухожилия...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Studopedia.info - Студопедия - 2014-2026 год . (0.008 сек.) русская версия | украинская версия