Лабораторная №9
.docxОдеський національний політехнічний університет
Інститут комп’ютерних систем
Кафедра інформаційних систем
Варіант №1
Лабораторна робота №9
По дисципліні “Алгоритмізація і програмування”
Тема:“ Програмування алгоритмів обробки рядків”
Виконав:
Студент гр. АІ-171
Анищенко М.О.
Перевірили:
Шпиньковський О.А.
Одеса 2017
Мета роботи: Набуття практичних навичок у створенні програм обробки рядків.
Завдання:
Дано текст.
а) Підрахувати кількість слів у цьому рядку.
б) Підрахувати кількість букв «а» в останньому слові цього рядка.
в) Замінити всі букви «а» на літери «А»
БСА:
|
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#define L 20
int main()
{
char str[L];
printf("Enter string(max 30 symbols): ");
gets(str);
int word_num = 0, last_let_ind;
for(int i = 0; i < L-1; i++)
if(isalpha(str[i]) && (str[i+1] == ' ' || str[i+1] == '\0'))
{
word_num++;
last_let_ind = i;
}
printf("Number of words = %d\n", word_num);
int num_of_a = 0;
for(int i = last_let_ind; str[i] != ' '; i--)
if(str[i] == 'a')
num_of_a++;
printf("Number of 'a' symbols = %d\n", num_of_a);
for(int i = 0; i < L-1; i++)
if(str[i] == 'a')
str[i] = 'A';
puts(str);
return 0;
}
Приклад виконання:
Вхідний рядок: «and justice for all»
Вивід програми:
Enter string(max 30 symbols): and justice for all
Number of words = 4
Number of 'a' symbols = 1
And justice for All
Process returned 0 (0x0) execution time : 10.476 s
Press any key to continue.
Контрольні запитання:
-
Як описуються рядкові змінні? Що являє собою вираження строкового типу?
Таке вираження являє собою масив данних, кожний символ строкового рядку займає певну позицію в цьому масиві.
-
Яка максимальна довжина рядка допустима в С?
Довжина не обмежена, ліміт встановлюється при оглошенні строкого масива в програмі.
-
Які операції допустимі над строковими даними?
Копіювання, видалення, об'єднання, приєднання, пошук, заміна символів та багато інших дій.
-
Які стандартні процедури та функції для роботи з рядками ви знаєте?
Puts() – виведення, gets() – зчитування, strcpy – копіювання.
Висновки:
Під час виконання лабораторної роботи була створена програма, що обробляє рядок символів.
Під час виконання ЛР не виникло помилок.