Сортировка символов по алфавиту 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Сортировка символов по алфавиту



 

Сортировка осуществляется пузырьковым методом, рассмотренным в п. 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; просмотров: 1521; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.0.25 (0.03 с.)