Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
💸 Как сделать бизнес проще, а карман толще?
Тот, кто работает в сфере услуг, знает — без ведения записи клиентов никуда. Мало того, что нужно видеть свое раписание, но и напоминать клиентам о визитах тоже.
Проблема в том, что средняя цена по рынку за такой сервис — 800 руб/мес или почти 15 000 руб за год. И это минимальный функционал.
Нашли самый бюджетный и оптимальный вариант: сервис VisitTime.⚡️ Для новых пользователей первый месяц бесплатно. А далее 290 руб/мес, это в 3 раза дешевле аналогов. За эту цену доступен весь функционал: напоминание о визитах, чаевые, предоплаты, общение с клиентами, переносы записей и так далее. ✅ Уйма гибких настроек, которые помогут вам зарабатывать больше и забыть про чувство «что-то мне нужно было сделать». Сомневаетесь? нажмите на текст, запустите чат-бота и убедитесь во всем сами! Float sum;
}; Здесь ELEM -имя структуры; num, name и sum – элементы структуры и их типы. В качестве элементов структуры могут быть также использованы имена других структур. При описании структуры используется имя шаблона. Могут быть описаны отдельные структуры, массивы структур, а также указатели на структуры и массивы указателей. Примеры описаний: struct ELEM st; // структура struct ELEM sm[10]; // массив структур struct ELEM *sp; // указатель на структуру struct ELEM *spm[10]; // массив указателей на структуры Для обращения к элементу структуры исполняется операция «.», например: st.num = 2; sm[3].sum = 3.3; scanf («%s», & sp.name); Для обращения к элементу структуры, адресуемой указателем, используется операция «->», например: sp-> num = 2; spm[3]-> sum = 3.3; spm-> name = ’R’; 3. Методические указания. При написании программы следует использовать статические массивы структур или указателей на структуры. Размерности массивов – 3-4. Для динамического выделения памяти используйте функцию malloc(). Для определения размера структуры в байтах удобно использовать операцию sizeof(), возвращающую целую константу: struct ELEM *sp; sp = malloc(sizeof(structELEM)); При выполнении п. 4.2. потребуется выполнять операцию перестановки элементов массива. Для этого необходимо описать дополнительный указатель на структуру. Можно также использовать вспомогательный массив указателей. Ввод данных выполнить с помощью функций scanf(). 4. Порядок выполнения работы 4.1. Написать программу, работающую с базой данных в виде массива структур и выполняющую последовательный ввод данных в массив и последующую распечатку его содержимого. Состав структуры приведен в табл. 5.1. Типы данных выбрать самостоятельно. 4.2. Переписать программу п.4.1, используя массив указателей на структуры и динамическое выделение памяти. Выполнить сортировку массива. Способ сортировки массива приведен в табл. 5.1.
Таблица 5.1
5. Содержание отчета 5.1. Задание. 5.2. Листинги программ по пп. 4.1 и 4.2. 5.3. Тестовый пример.
6. Контрольные вопросы 6.1. Правила описания структур. 6.2. Операции, используемые для выделения элементов структур. 6.3. Выделение элементов структур, адресуемых указателем. 6.4. Назначение функции malloc(). 6.5. Отличие calloc() от malloc(). 6.6. Правила инициализации структур при описании. 6.7. Особенности выделения памяти под структуры. 6.8. Назначение функций realloc() и free(). 6.9. Как передать структуру в функцию?
|