Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metod_uk_k_lab_r_6.doc
Скачиваний:
4
Добавлен:
18.12.2018
Размер:
189.44 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

РОССИЙСКОЙ ФЕДЕРАЦИИ

АЛТАЙСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ

УНИВЕРСИТЕТ ИМЕНИ И. И. ПОЛЗУНОВА

Л. Ю. Качесова

ПРОГРАММИРОВАНИЕ НА С++

Часть 1 Строки и структуры

Методические указания к лабораторным работам

по дисциплине “Программирование”

БАРНАУЛ 2011

УДК 681.3.06:519.682(0.75.5)

Качесова Л.Ю. Программирование на языке С++. Часть 1: Методические указания к лабораторным работам по дисциплине “Программирование” для студентов направления 23. 01.00 – Информатика и вычислительная техника./Алт. гос. техн. ун-т им. И. И. Ползунова. – Барнаул: Изд-во АлтГТУ, - 2011.- 13 с.

Рассмотрены и одобрены

на заседании кафедры САПР

Протокол № от

Содержание

Порядок выполнения лабораторных работ 4

Требования к оформлению лабораторных работ 4

Требования к защите лабораторных работ 4

Лабораторная работа №6. Строки и структуры 5

6.1 Работа со словами текста 5

6.2 Работа с предложениями текста 6

6.3 Работа со структурами и бинарными файлами 9

6.4. Задание 1 13

6.5 Задание 2 15

  1. Порядок выполнения лабораторных работ

Для выполнения лабораторной работы нужна предварительная подготовка:

  • знакомство с темой и целью лабораторной работы;

  • изучение необходимых к выполнению лабораторной работы теоретических сведений и примеров программ;

  • знакомство с заданием к лабораторной работе, постановка задачи индивидуального варианта, обдумывание алгоритма и программной реализации задачи.

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

Оборудование, технические средства, инструмент

Лабораторные работы выполняются в компьютерном классе, оснащенном персональными компьютерами. На компьютерах должна быть установлена система программирования, поддерживающая создание консольных программ на С++, например, Geany, Visual C++ или другие.

  1. Требования к оформлению лабораторных работ

Отчет по лабораторной работе оформляется в виде принтерных распечаток на сброшюрованных листах формата А4. Он должен содержать:

  • титульный лист;

  • задание к лабораторной работе;

  • постановка задачи;

  • алгоритм решения задачи в виде блок-схемы;

  • листинг программы;

  • тестовые примеры, иллюстрирующие все варианты работы программы.

  1. Требования к защите лабораторных работ

После выполнения лабораторную работу защищают, т. е. поясняют алгоритм работы программы и отвечают на контрольные вопросы.

На защиту не допускаются студенты, не оформившие отчет о выполненной лабораторной работе.

  1. Лабораторная работа №6. Строки и структуры

Цель работы: получить практический опыт написания программ по обработке информации с использованием строк и структур.

  1. 6.1 Работа со словами текста

В листинге 6.1 представлена программа, которая определяет, сколько раз встретилось заданное слово в текстовом файле, длина строки в котором не превышает 80 символов (рис. 6.1). Текст не содержит переноса слов. Слово – это последовательность алфавитно-цифровых символов, после которых следует знак пунктуации, разделитель или признак конца строки. Результат выполнения программы представлен на рис. 6.2.

Первый вызов функции strtok в операторе 1 формирует адрес первого слова строки line. Он сохраняется в переменной tok. Функция strtok заменяет на NULL разделитель, находящийся после найденного слова, поэтому в операторе 2 можно сравнивать на равенство искомое и выделенное слово. В операторе 3 выполняется поиск следующего слова в той же строке. Для этого в функции strtok задается в качестве первого параметра NULL.

Листинг 6.1 Подсчет количества вхождений слова в текст

#include <iostream>

#include <string>

using namespace std;

int main(void)

{ const int len = 81;

char word[len], line[len];

char delims[]=",.!?/|)(*:; "; //разделители слов

FILE * f;

f=fopen("D:\\FileTXT\\text.txt","r");

if (f != NULL)

{ cout << "Вв. слово для поиска: \n";

cin >> word;

char *tok;

int kol = 0;

while(!feof(f))

{ fgets(line,sizeof(line), f);

tok=strtok(line, delims); //оператор 1

while (tok != NULL)

{ if (!strcmp(tok, word)) kol++;//оператор 2

tok= strtok(NULL,delims); //оператор 3

}

}

fclose(f);

cout<<"Кол-во вхождений заданного слова = "<<kol;

cout << endl;

} else cout << "Файл не найден!\n";

}

Рисунок 6.1 – Файл с текстом

Рисунок 6.2 – Результат выполнения программы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]