17539

Робота з рядками символів. Обробка масивів на С++

Лабораторная работа

Информатика, кибернетика и программирование

Основи програмування та алгоритмічні мови Лабораторна робота №8 Лабораторна робота №8 Робота з рядками символів. Обробка масивів Мета роботи – вивчити особливості опису і використання символьних маси...

Украинкский

2013-07-04

71.5 KB

30 чел.


Основи програмування та алгоритмічні мови                                            Лаборато
рна робота №8

Лабораторна робота №8

Робота з рядками символів. Обробка масивів

Мета роботи – вивчити особливості опису і використання символьних
мас
ивів,  використання покажчиків.

Завдання

  1.  Ознайомитися з теоретичними відомостями.
  2.  Скласти консольну програму на мові С++ , яка:
  3.  здійснює ввід з клавіатури прізвища, ім'я та по батькові користувача;
  4.  визначає  довжину введених рядків;
  5.  виконує дії відповідно варіанту завдання;
  6.  виводить результат на екран, додавши до нього коментарі - студент якої спеціальності і групи виконав завдання.  

Теоретичні відомості

Визначення рядка

Рядок - це послідовність символів. Як відомо, послідовності в С++ представляються масивами або покажчиками.

Програми на C++ зберігають  рядки як масиви типу char.

Для оголошення  строкової змінної усередині програми просто оголосіть масив типу char з кількістю елементів, достатнім для зберігання необхідних символів.

char s[64];

Головна відмінність між символьними рядками та іншими типами масивів полягає в тому, що C++ визначає останній елемент масиву. Програми на C ++ представляють кінець символьного рядка за допомогою символу NULL, який в C++ зображується як спеціальний символ '\ 0', або нульовий байт.

Створення рядків

Проілюструємо створення рядків на фрагментах коду з коментарями.

char str1[10]; // Рядок - масив з 10 символів.

              // Початкове значення символів не визначено.

char str2[10]="Hello";

/* Використовується ініціалізація (не присвоювання!). У перші 5 символів записується "Hello", у 6 - нуль-термінатор, значення трьох останніх не визначено.*/

char str3[10]={'H', 'e', 'l', 'l', 'o', '\0'};

//еквівалентно попередньому..

char str4[10]="Very long line"; // Помилка.

// Масив з 10 елементів не можна ініціювати довшої послідовністю

char str5[]="Very long line"; // А так можна. Масив з 15 елементів.

Присвоєння рядків

Перший і найочевидніший спосіб присвоювання рядків - присвоювання окремих символів. Наприклад,

str1[0]=’H’;

str1[1]=’e’;

str1[2]=’l’;

str1[3]=’l’;

str1[4]=’o’;

str1[5]=’\0’;

Інші способи:

char s[200]; // масив з кількістю елементів,

            // достатнім для зберігання необхідних символів

cin>>s;      // ввід з консолі до першого пробілу

            // або до натиснення «Enter»

cin.getline(s, 200);  // ввід з до натиснення «Enter»

                     // 200 – максимальна кількість символів

  

Варіанти завдань

  1.  Вивести ім'я та кількість літер у третьому слові.  Визначити кількість літер "а" у прізвищі.
  2.  Вивести перші літери прізвища, імені та по батькові із крапками. Вивести довжину прізвища та імені.
  3.  Вивести прізвище та ініціали. Визначити кількість літер "а" в імені.
  4.  Перевірити, визначити, чи є ім’я паліндромом, тобто читається однаково справа наліво і зліва направо (АННА, АЛЛА).
  5.  Видалити всі літери "а" та "о" із прізвища.
  6.  Вивести ім'я в стовпець. Перевірити, чи починається хоча б одне зі слів з
    літ
    ери "В".
  7.  Всі літери "а" імені продублювати. Вивести прізвище та кількість літер імені.
  8.  Вивести ім'я у зворотному порядку. Вивести прізвище в стовпець.
  9.  Вивести слово, що має найменшу кількість літер.
  10.  Вивести прізвище, ім'я, по батькові з пробілами, та загальну кількість літер.
  11.  Вивести довжини трьох слів. Кожну літеру імені продублювати.
  12.  Вивести прізвище у зворотному порядку. Визначити кількість літер "а" та "о" в імені.
  13.  Вивести трете слово та кількість літер у прізвищі. Замінити в прізвищі всі літери «а» на «о» .
  14.  Вивести довжину прізвища та імені. Замінити в прізвищі всі літери «о» на «а».
  15.  Вивести ім'я та кількість літер у прізвищі. Вивести саме довге слово.

4.  Контрольні питання

  1.  Що таке рядки? Навіщо вони використовуються?
  2.  Як ініціалізувати рядок?
  3.  Як здійснюється доступ до елементів строки?
  4.  Як оголошується змінна типу char?
  5.  Що являється ознакою кінця рядка?
  6.  Який розмір масиву, що визначається таким чином:
    char s[]=”koshka”;   ?
  7.  Що являє собою змінна s  та змінна s[i] ?  ( див. пт.6)
  8.  Що таке вказівник? Наведіть приклад використання вказівників при роботі з масивами символів.

PAGE  4


 

А также другие работы, которые могут Вас заинтересовать

32487. ПРЕПОДАВАНИЕ ПРОФИЛЬНЫХ КУРСОВ ИНФОРМАТИКИ ОРИЕНТИРОВАННЫХ НА ПРОГРАММИРОВАНИЕ 250 KB
  Каждый объект можно использовать для решения задачи не вникая во внутренние механизмы его функционирования C Delphi Visul Bsic. Delphi является системой объектного программирования созданной на базе Паскаля; по оценке специалистов ее профессиональный уровень очень высок. Поурочное планирование курса Учимся программировать на Delphi Курс 10 класса 34 часа N п п Название темы Кол. Основные понятия среды Delphi.
32488. ПРОФИЛЬНЫЕ КУРСЫ ИНФОРМАТИКИ ОРИЕНТИРОВАННЫЕ НА МОДЕЛИРОВАНИЕ 89.5 KB
  Ряд профильных курсов информатики включает в свое название слово моделирование или использует элементы моделирования в содержании поскольку моделирование является неотъемлемым компонентом общечеловеческой культуры и мощным методом познания окружающего мира природы и общества. Курсы ориентированные на моделирование должны выполнять развивающую функцию поскольку при их изучении учащиеся продолжают знакомство еще с одним методом познания окружающей действительности методом компьютерного моделирования. Выработка практических...
32489. ПРИМЕНЕНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ В ЭКСПЕРИМЕНТАЛЬНЫХ ПЕДАГОГИЧЕСКИХ ИССЛЕДОВАНИЯХ 69.5 KB
  Теория и методика обучения информатики ПРИМЕНЕНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ В ЭКСПЕРИМЕНТАЛЬНЫХ ПЕДАГОГИЧЕСКИХ ИССЛЕДОВАНИЯХ. Компьютер как инструмент педагогического исследования Сегодня информационные технологии находят довольно широкое применение в педагогике как науке а также непосредственно в практике учебно воспитательного процесса: дистанционное обучение учреждение онлайновых учебных заведений; помощь в системе управления образованием; создание программ и виртуальных учебников по различным предметам; поиск в сети информации...
32491. ПРЕДМЕТ ТЕОРИИ И МЕТОДИКИ ОБУЧЕНИЯ ИНФОРМАТИКЕ. СВЯЗЬ МЕТОДИКИ ПРЕПОДАВАНИЯ ИНФОРМАТИКИ С ДРУГИМИ НАУКАМИ 53 KB
  Теория и методика обучения информатики ВВЕДЕНИЕ. СВЯЗЬ МЕТОДИКИ ПРЕПОДАВАНИЯ ИНФОРМАТИКИ С ДРУГИМИ НАУКАМИ. Предмет теории и методики обучения информатики. Современный учитель информатики это не только предметник это проводник современных идей и технологий обучения с использованием компьютера в школе.
32492. СТОРИЯ ВНЕДРЕНИЯ КУРСА ИНФОРМАТИКИ В СРЕДНИЕ УЧЕБНЫЕ ЗАВЕДЕНИЯ 93 KB
  Теория и методика обучения информатики ИСТОРИЯ ВНЕДРЕНИЯ КУРСА ИНФОРМАТИКИ В СРЕДНИЕ УЧЕБНЫЕ ЗАВЕДЕНИЯ. История внедрения курса информатики в средние учебные заведения. Новая учебная дисциплина получила название Основы информатики и вычислительной техники ОИВТ. Вместе с тем постепенное проникновение в учебный план общеобразовательной школы сведений из области информатики началось значительно раньше и начинался этот процесс с опытов по изучению школьниками элементов программирования и кибернетики.
32493. Цели и задачи обучения информатики в школе 47.5 KB
  Теория и методика обучения информатики ЦЕЛИ И ЗАДАЧИ ОБУЧЕНИЯ ИНФОРМАТИКЕ В ШКОЛЕ. Цели и задачи обучения информатики в школе На основе общих принципов педагогической политики государство определило главные задачи общеобразовательной школы: обеспечение усвоения учащимися системы знаний определяемой общественными и производственными потребностями; формирование научного миропонимания политической экономической правовой культуры гуманистических ценностей и идеалов творческого мышления самостоятельности в пополнении знаний;...
32494. Структура обучения информатике в школе 84.5 KB
  ; логические модели дедуктивные системы сложность вывода нетрадиционные исчисления: индуктивный и дедуктивный вывод вывод по аналогии правдоподобный вывод немонотонные рассуждения и т.; искусственный интеллект представление знаний вывод на знаниях обучение экспертные системы и т.; бионика математические модели в биологии модели поведения генетические системы и алгоритмы и т.; инженерия математического обеспечения языки программирования технологии создания программных систем инструментальные системы и т.
32495. СОВРЕМЕННОЕ СОДЕРЖАНИЕ ОБРАЗОВАНИЯ ШКОЛЬНОГО КУРСА ИНФОРМАТИКИ. СТАНДАРТ ШКОЛЬНОГО ОБРАЗОВАНИЯ ПО ИНФОРМАТИКЕ 218.5 KB
  СТАНДАРТ ШКОЛЬНОГО ОБРАЗОВАНИЯ ПО ИНФОРМАТИКЕ Современное содержание образования школьного курса информатики Информатика в настоящее время одна из фундаментальных областей научного знания формирующая системноинформационный подход к анализу окружающего мира изучающая информационные процессы методы и средства получения преобразования передачи хранения и использования информации стремительно развивающаяся и постоянно расширяющаяся область практической деятельности человека связанная с использованием информационных технологий. Второй...