18534

Одномерные массивы. Упорядоченная совокупность однотипных данных

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

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

Лабораторная работа № 4. Одномерные массивы Массив используется когда дана упорядоченная совокупность однотипных данных чисел символов строк символов и т.д. с ограниченным числом элементов. Примеры описаний массивов: char text[10];/ массив из 10 символов/ int a[50];/ мас...

Русский

2013-07-08

20.3 KB

5 чел.

Лабораторная работа № 4.

Одномерные массивы

Массив используется, когда дана упорядоченная совокупность однотипных данных (чисел, символов, строк символов и т.д.) с ограниченным числом элементов.

Примеры описаний массивов:

char text[10]; /* массив из 10 символов*/

int a[50]; /* массив из 50 целых чисел*/

float matr[5][10]; /* матрица вещ.чисел разм.5х10 */

Для обращения к элементу массива указываются имя массива и индексы элемента в квадратных скобках, например, text[0], a[i+1], matr[i][j]. Индексация начинается с 0 (в приведенном примере text[0] - первый элемент массива, последний элемент имеет индекс 9).

Ввод/вывод массивов осуществляется в цикле поэлементно.

Пример программы:

Первый вариант:

/***************************************************/

/* Задача. Входная строка содержит последовательность   */

/* слов, разделенных пробелами. Признак конца строки -  */

/* символ '\n' (перевод строки). Вывести на экран слова     */

/* длиной до пяти символов.                                                   */

/***************************************************/

#include <stdio.h>

#define DLSL 80 /* макс. длина слова */

main()

{ char s; /* тек. символ */

char sl[DLSL]; /* тек. слово*/

int i,j; /* индексы тек. символа в слове */

int psl=1; /* признак, что слово длиной до 5 симв. первое */

printf ("\n\nВведите строку символов\n");

s=getchar();

while (s!='\n')

{ if (s==' ') s=getchar();

else

{ i=0;

do

{ sl[i++]=s;

s=getchar();

}

while ((s!=' ') && (s!='\n'));

if (i<5)

{ if (psl) /* если слово первое */

{ printf ("Слова длиной до 5 символов:\n");

psl=0;

}

for (j=0; j<i; j++)

putchar(sl[j]);

putchar(' ');

}

}

}

if (psl) printf ("Слов длиной до 5 символов нет");

}

Пример результатов тестирования программы:

Введите строку символов

май  апрель март весна лето

Слова длиной до 5 символов:

май март лето

Введите строку символов

декабрь январь февраль

Слов длиной до 5 символов нет

Второй вариант программы:

/***************************************************/

/* Задача. Входная строка содержит последовательность   */

/* слов, разделенных пробелами. Признак конца строки -  */

/* символ '\n' (перевод строки). Вывести на экран слова     */

/* длиной до пяти символов.                                                   */

/***************************************************/

#include <stdio.h>

#define DLSTR 80 /* макс.длина строки */

main()

{ char str[DLSTR]; /* тек. строка */

int i,j; /* индексы тек. символа в строке */

int n,k; /* индексы перв. и посл. символов тек. Слова в строке */

int net_sl=1; /* признак, что слов длиной до 5 симв. нет */

printf ("\n\nВведите строку символов\n");

gets(str); /* ввод строки в массив str c заменой символа '\n' на признак

конца строки '\0'  */

printf ("Результат:\n");

i=0;

while (str[i]!='\0')

{ if (str[i]==' ')  i++;

else

{ n=i;

do i++; while ((str[i]!=' ') && (str[i]!='\0'));

k=i;

if ( k-n < 5 )

{ for (j=n; j<k; j++)

putchar(str[j]);

putchar(' ');

net_sl=0;

}

}

}

if (net_sl) printf ("Слов длиной до 5 символов нет.");

printf ("\nДля завершения нажмите любую клавишу");

getch(); /* чтение символа без отображения его на экране */

}

Пример результатов тестирования программы:

Введите строку символов

весна лето осень зима

Результат:

лето зима

Для завершения нажмите любую клавишу

Введите строку символов

декабрь январь февраль

Результат:

Слов длиной до 5 символов нет.

Для завершения нажмите любую клавишу

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

1. Получить задание у преподавателя.

2. Составить программу на Си и подобрать тесты для проверки программы на ЭВМ.

3. Отладить программу на ЭВМ.

4. Оформить и сдать отчет по лабораторной работе.

Задания.

  1. Дана последовательность из N различных вещественных чисел. Найти сумму чисел, расположенных между максимальным и минимальным числами.
  2. Дан текст произвольной длины. Определить сколько раз встречается каждая цифра в тексте.
  3. Задан текст, произвольной длины, состоящий из слов, разделенных пробелами. Вывести самое короткое слово.
  4. Дан текст, произвольной длины. Определить символ, встречающийся в тексте с максимальной частотой.
  5. Дан текст, длиной не более 80 символов, заканчивающийся точкой. Определить, симметричен ли он.
  6. Заданы две упорядоченные по возрастанию последовательности из N чисел и М чисел. Составить программу, объединяющую их в одну упорядоченную по возрастанию последовательность.
  7. Дан массив из 10 вещественных чисел. Упорядочить массив по возрастанию методом последовательного нахождения минимума.
  8. Дан одномерный массив, размером в 12 элементов. Необходимо инвертировать массив, путем замены значения первого элемента на последний, второго на предпоследний и так далее.
  9. Задан текст, произвольной длины, состоящий из слов, разделенных пробелами. Вывести только те слова, которые начинаются и заканчиваются на одну и ту же букву.
  10. Задан текст, произвольной длины, состоящий из слов, разделенных пробелами. Вывести только те слова, которые содержат букву ‘а’.
  11. Дана последовательность из N вещественных чисел. Распечатать числа в обратном порядке по 6 чисел в строке.
  12. Задан текст, произвольной длины, состоящий из слов, разделенных пробелами. Вывести только те слова, которые не содержат букву ‘а’.
  13. Текст содержит выражение со скобками. Напечатать выражение, заключенное в самые внутренние скобки.
  14. Задан текст, произвольной длины, состоящий из слов, разделенных пробелами. Вывести самое длинное слово.
  15. Дан текст, произвольной длины. Определить сколько раз встречается каждая латинская буква в тексте.
  16. Дана строка символов. Признак конца ‘\n’. Вывести слова заканчивающиеся буквой ‘а’, с порядковым номером этих слов.


 

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

52212. Animals and the countries where they live 39.5 KB
  Visul mterils nimls ; posters; textbook; workbook; flsh crds; pictures of nimls; toys of nimls soft nd mde of rubber; project works of pupils. Guess wht niml is it 2 Pronuncition drill Mteril: song The nimls wlk two by two . The nimls wlk two by two Hoory Hoory The nimls wlk two by two Hoory Hoory The nimls wlk two by two The lions the tigers the elephnts too.
52213. Animals and habitats 39 KB
  Visul mterils nimls ; posters; textbook; workbook; flsh crds; pictures of nimls; word crds for the new words; toys of nimls soft nd mde of rubber; crossword nimls . Let's nme s mny nimls s you cn. 2 Pronuncition drill Mteril: song The nimls wlk two by two .
52214. Анімаційні ефекти на слайдах. Інтерактивні презентації (реалізація переходів між слайдами за допомогою гіперпосилань та системи навігації) 207 KB
  Інтерактивні презентації реалізація переходів між слайдами за допомогою гіперпосилань та системи навігації урок комбінований Мета: Навчальна: Познайомити учнів з поняттям анімації; Сформувати вміння настроїти показ презентації та інтерактивний перехід між слайдами та презентаціями. Очікувані результати Закріпити знання про: завантаження програми для створення презентацій; створювання додавання слайди; збереження презентації. Після уроку учні зможуть: створювати інтерактивний інтерфейс презентації; пожвавити демонстрацію презентації...
52216. Анімаційні ефекти при створенні презентації. 66 KB
  Пр Створювання та показ електронної презентації Мета: навчитися додавати ефекти анімації до презентації та до елементів слайду; налаштовувати параметри ефектів; розвинути вміння застосовувати отримані знання на практиці; виховувати в учнів культуру користування інформаційними та компютер ними технологіями; сприяти формуванню творчої особистості Хід уроку: І. Назва програми в якій створюються презентації англ. Отже на сьогоднішньому уроці ми навчимося додавати анімацію до презентації для того щоб її було цікавіше переглядати.