Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Создание консольного приложения. Для создания текстового файла в консольном приложении используем функцию fprintf()
Для создания текстового файла в консольном приложении используем функцию 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». Результаты выполнения программы могут иметь вид:
|