|
Программирование >> Структурное программирование
Когда происходит согласование (т.е. записи с одним номером счета имеются как в основном файле, так и в файле текущих сделок), добавляйте сумму в долларах из файла текущих сделок к сальдо в основном файле и заносите запись в newmast.dat . (Полагайте, что расходы отображаются положительными суммами, а доплаты - отрицательными). Когда имеется основная запись для данного счета, но нет соответствующей записи по текущим сделкам, то просто запись основного файла записывается в файл newmast.dat . Когда существует запись по текущим сделкам, но нет соответствующей основной записи, то печатайте сообщение Нет соответствующей записи для счета номер... (заполните многоточие номером текущей записи). 14.8. После написания программы упражнения 14.7 напишите простую программу создания контрольных данных для ее тестирования. Используйте следующий пример данных: Основной файл:
Файл текущих записей
14.9. Выполните программу упражнения 14.7, используя файлы тестовых данных, созданные в упражнении 14.8. Отпечатайте новый основной файл. Проверьте, правильно ли обновлены счета. 14.10. Возможно (и очень часто) имеется несколько текущих записей с одинаковым ключом записи. Это происходит из-за того, что клиент мог совершить за расчетный период несколько операций. Перепишите вашу программу сравнения счетов из упражнения 14.7, чтобы обеспечить возможность обработки нескольких текущих записей с одним ключом. Модифицируйте тестовые данные упражнения 14.8, включив в них следующие дополнительные текущие записи:
14.11. Напишите ряд операторов для вьшолнения каждой из приведенных ниже операций. Полагайте, что определена структура struct person { char lastName[15]; char firstName[15]; char age[2]; и открыт соответствуюш;ий файл произвольного доступа. a) Инициализируйте файл nameage.dat со 100 записями, содер-жаш;ими LatsName = unassigned , firstName = и age= О . b) Введите 10 фамилий, имен и соответствуюш;ие возрасты, запишите эти данные в файл. c) Обновите записи, которые имеют указанные сведения, а если таких сведений нет, то сообш;ите пользователю Нет сведений . d) Удалите запись, которая содержит информацию, путем повторной инициализации этой записи. 14.12. Вы являетесь владельцем склада металлических изделий и нуждаетесь в инвентаризации, которая сказала бы вам, сколько всего различных изделий вы имеете, какое количество каждого из них у вас на руках и стоимость каждого из них. Напишите программу, которая бы создала файл произвольного доступа hardware.dat на сотню пустых записей, позволяла бы вводить данные по каждому изделию, давала бы вам возможность получать список всех изделий, удалять записи по изделиям, которых у вас уже нет, и позволяла бы обновлять любую информацию в файле. Ключом должен быть идентификационный номер изделия. Используйте сле-дуюш;ую информацию для начала работы с вашим файлом:
14.13. ]У[одифицируйте программу генерации номера телефонна, которую вы написали в главе 4, с тем, чтобы она записывала свои выходные данные в файл. Это позволит вам читать этот файл, когда вам это будет удобно. Если у вас имеется компьютерный словарь, модифицируйте вашу программу для поиска в словаре до тысячи слов, состояш;их каждое из семи символов. Некоторые интересные комбинации из 7 букв, созданные этой программой, могут состоять из двух и более слов. Например, номер телефона 8432677 соответствует THEBOSS . ]У[одифицируйте вашу программу для исполь- зования компьютерного словаря при проверке каждого возможного слова из 7 букв с тем, чтобы посмотреть, не состоит ли оно из слова из 1 буквы, следом за которым идет слово из 6 букв; затем проверьте, не состоит ли оно из слова из 2 символов, следом за которым идет слово из 5 букв и т.д. 14.14. Напишите программу, которая использует операцию sizeof для определения числа байтов различных типов данных в используемой вами системе компьютера. Напишите результат в файл data-size.dat , чтобы позднее его можно было распечатать. Формат результата в файле должен быть следующий: Тип данных Размер char 1 unsigned char 1 short int 2 unsigned short int 2 int 4 unsigned int 4 long int 4 unsigned long int 4 float 4 double 8 long doiible 16 Замечание: размер встроенных типов данных на вашем компьютере может отличаться от приведенного выше списка.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |