Лабораторная работа 1. 1381_PR_Новак_Полина_lb1. Отчет по лабораторной работе 1 по дисциплине Программирование
Скачать 25.63 Kb.
|
МИНОБРНАУКИ РОССИИ Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В.И. Ульянова (Ленина) Кафедра МО ЭВМ отчет по лабораторной работе №1 по дисциплине «Программирование» Структуры и обзор stdlib
Санкт-Петербург 2022 Цель работы.Развитие навыков работы со структурами и библиотекой stdlib языка программирования Си. Задание.Напишите программу, на вход которой подается текст на английском языке (длина текста не превышает 1000 символов) и слово str (длина слова не превышает 30 знаков). Слова в тексте разделены пробелами или точкой. Программа должна вывести строку "exists", если str в тексте есть и "doesn't exist" в противном случае.Программа должна реализовать следующий алгоритм:разбить текст на слова, используя функции стандартной библиотекиотсортировать слова, используя алгоритм быстрой сортировки (см. функции стандартной библиотеки)определить, присутствует ли в тексте str, используя алгоритм двоичного поиска (для реализации алгоритма двоичного поиска используйте функцию стандартной библиотеки)вывести строку "exists", если str в тексте есть и "doesn't exist" в противном случае.Выполнение работы.Подключаются библиотеки stdio, stdlib, откуда в дальнейшем будут задействованы определённые функции. В функции main() инициализируются статический массив text-текст, вводимый пользователем, динамический str-строка, вводимая пользователем после ввода текста. Программа считывает текст и строку при помощи fgets(), убирает перенос строки для корректной работы обработки текста. Инициализируется динамический двумерный массив TextRemake, текст делится на слова при помощи функции strtok, TextRemake заполняется указателями из strtok. При помощи функции qsort происходит сортировка TextRemake, функция бинарного поиска bsearch определяет, присутствует ли в тексте str, в зависимости от этого выводит “exists” или “doesn’t exist”. Тестирование.Результаты тестирования представлены в табл. 1.
Выводы.Были развиты навыки работы со структурами и библиотекой stdlib языка программирования Си. Приложение А |