Лабораторна робота №8
Тема: Рядки.
Мета: отримання практичних навичок у роботі з рядками.
Контрольні запитання:
Які домовленості про кінець рядка існують у С/C++ і Паскалі? Вкажіть усі «за» і «проти» явної вказівки кінців рядків за допомогою null-літери '\0'.
Що надрукує наступна програма?
#include <stdio.h>
char str[ ] = "SSSWILTECH1\1\11W\1WALLMP1";
main()
{ int i, c;
for ( i = 2; ( c = str [ i ] ) != ‘\0’; i++) {
switch (c) {
case ‘a’: putchar(‘i’); continue;
case ‘1’: break;
case 1: while ( ( c = str [++ i ] ) != ‘\1’ && c != ‘\0’);
case 9: putchar(‘S’);
case ‘E’: case ‘L’: continue;
default: putchar(c); continue; }
putchar(‘ ’); }
putchar(‘\n’);
}
Функції роботи з рядками(<string.h>).
Завдання:
Описати користувацькі функції, які працюють аналогічно стандартним функціям strlen, strcpy, strcmp , протестувати їх роботу.
Задано текст Сі - програми( у вхідному файлі чи у масиві символів). Знайти(виділити іншим кольором або підкреслити) службові слова Сі. Використати функцію strtok (<string.h>).
Завдання для індивідуального виконання:
Вводиться речення. Слова у реченні можуть бути роздулені одним чи більше пропусками.
#№ варіанту |
Завдання |
1 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах першу букву перенести в кiнець слова. |
2 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах останню букву перенести на початок слова. |
3 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах видалити першу букву. |
4 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах видалити останню букву. |
5 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах видалити всi наступнi входження останнiй букви. |
6 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах видалити всi наступнi входження першо∙ букви. |
7 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому в цих словах залишити тiльки першi входження кожно∙ букви. |
8 |
Надрукувати всi слова, якi вiдрiзняються вiд останнього, при цьому, якщо слово непарно∙ довжини, то видалити його середню букву. |
9 |
Надрукувати всi слова, але в зворотньому напрямку. |
10 |
Надрукувати всi слова за алфавiтом.. |
11 |
Надрукувати тi слова, якi вiдрiзняються вiд останнього, при цьому словасиметричнi |
12 |
Надрукувати тi слова, якi вiдрiзняються вiд останнього, при цьому в словi перша буква входить в нього ще раз. |
13 |
Надрукувати тi слова, якi вiдрiзняються вiд останнього, при цьому в словi букви розташованi за алфавiтом. |
14 |
Надрукувати тi слова, якi вiдрiзняються вiд останнього, при цьому довжина слова мiнiмальна. Якщо таких слiв декiлька, роздрукувати останнї. |
15 |
Надрукувати тi слова, якi вiдрiзняються вiд останнього, при цьому в словi голоснi букви чергуються з приголосними. |
