Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Сортировка символов по алфавитуСодержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Сортировка осуществляется пузырьковым методом, рассмотренным в п. 1.1.1. Для проверки правильности в приложении I приведена таблица кодов символов по стандарту ASCII. Сортировать символы в строке не имеет смысла, поэтому рассмотрим программу сортировки слов по начальной букве. Программа является дополнением к программе предыдущего раздела по выделению слов. На начало каждого слова указывает переменная ptr[i]. … int N=i;//N-число слов char* t; for(int j=0;j<N;j++) strlwr(ptr[j]); //преобразование к строчным буквам for(int i=N-1;i>0;i--) //начало сортировки for(int j=0;j<i;j++) if(*ptr[j]>*ptr[j+1]) { t=ptr[j]; ptr[j]=ptr[j+1]; ptr[j+1]=t; }; //конец сортировки for(int j=1;j<N;j++) //перебор слов if(*ptr[j]==* ptr[j-1]) //сравнение по первой букве { ptr[j]++; ptr[j-1]++; if(*ptr[j]>* ptr[j-1])//сравнение по второй букве { t=ptr[j]; //перестновка указателей ptr[j]=ptr[j-1]; // ptr[j-1]=t; // }; } else continue; for(int j=0;j<N;j++) cout<<'\n'<<ptr[j];//вывод массива
Для сортировки по второй букве необходимо повторить процедуру внутри рядов с одинаковыми первыми буквами. Так что, предварительно нужно вычислить количество слов по каждой букве… Читателю предлагается самому разработать пример такой программы.
Задание к лабораторной работе №9
Задание 1 Ввести предложение, слова в котором разделены пробелами и запятыми. Распечатать те слова, которые являются обращениями других слов в этом предложении. Если нужных слов нет – сообщить об этом. Задание 2 Ввести строку, состоящую только из цифр и букв. Распечатать те группы цифр, в которых цифра 7 встречается не более двух раз. (Группа цифр – это последовательность цифр, обрамленная буквами.) Задание 3 Дан произвольный текст. Напечатать в алфавитном порядке все слова, которые входят в этот текст по одному разу. Задание 4 Распечатать введенное предложение, удалив из него слова, которые состоят менее чем из трех букв. Задание 5 Распечатать введенные слова, отличные от последнего, преобразовав их следующим образом: перенести последнюю букву в начало слова; оставить в слове только первые вхождения каждой буквы. Задание 6 Из введенного текста, распечатать все слова в алфавитном порядке с учетом длины. Более длинные слова распечатываются позже. Задание 7 Распечатать строку, которая получается из введенной строки следующим образом: каждая цифра заменяется на заключенную в круглые скобки последовательность литер ‘ + ’ (если цифра четная) или ‘ – ‘(если цифра нечетная), длина которой равна числу, изображаемому цифрой. Задание 8 Распечатать введенную строку, удалив из нее слова с нечетными номерами и перевернув слова с четными номерами. Задание 9 Распечатать введенную строку, исключив из нее те символы, которые находятся между скобками (). Сами скобки не удалять. Если хотя бы одной скобки нет – сообщить об этом. Задание 10 Ввести строку, состоящую только из цифр и букв. Распечатать те группы букв, в которых буква А встречается более двух раз. (Группа букв – это последовательность букв, обрамленная цифрами.) Задание 11 Составить частотный словарь введенного текста. Слова вместе с их частотами распечатать в порядке убывания их частот. Задание 12 Во введенном слове подсчитать количество различных пар букв. Например, в слове babacabacd 5 различных пар букв, ba – 3 пары, ac – 2 пары. Задание 13 Выделить из строки str1 все слова, начинающиеся с гласной буквы, а из строки str2 все слова, начинающиеся с согласной буквы. Образовать строку str3, состоящую из выделенных слов обеих строк. В новой строке слова должны разделяться двумя пробелами. Задание 14 Во введенном тексте указать слово, в котором доля гласных (а, е, о) максимальна. Задание 15 Распечатать в порядке, обратном алфавитному, все буквы которые входят в текст не менее трех раз.
Содержание отчета
Отчет выполняется в редакторе Word 2000 и должен содержать:
1. Листинг программ на языке Си, решающих задачи в соответствии с вариантом (номером компьютера) задания; 2. Блок-схему алгоритма программ; 3. Пояснения по методу решения задач; 4. Результаты тестирования программ.
При оформлении отчета следует пользоваться копированием листинга и результата тестирования в Word. Последний копируется с помощью комбинации клавиш ALT Prt Sc при условии активности консольного окна, что означает копирование графики окна в буфер обмена Windows. Затем окно вставляется в документ Word как любой другой объект.
ЛАБОРАТОРНАЯ РАБОТА №10
Функция main
|
||
|
Последнее изменение этой страницы: 2021-11-27; просмотров: 1613; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.156 (0.008 с.) |