Информатика. Курс лекций. Громов Ю.Ю - 170 стр.

UptoLike

/* Программа обработки списка */
#include <stdio.h>
#include <string.h>
main()
{
char names[10][9], pivot[9];
int i, j;
/* Ввод имен с клавиатуры */
for(i = 0; i < 10; ++i)
scanf("%s", names[i]);
/* Сортировка списка имен */
for(i = 1; i < 10; ++i)
{ strcpy(pivot,names[i]);
j = i - 1;
while((j>=0) && (strcmp(pivot, names[j]) < 0)
{ strcpy(names[j+1], names[j]);
--j;
}
strcpy(names[j+1],pivot);
}
/* Печать отсортированного списка */
for( i = 0; i < 10; ++i)
printf("%s\n", names[i]);
}
Рис. Г.2. Пример программы на языке С
Язык C++ был разработан Бьярни Страуструпом (Bjarne Strausstrup) из компании Bell Laboratories как усовершенство-
ванная версия
языка С. Цель создания языка C++ – достижение совместимости языка С с объектно-ориентированной парадигмой програм-
мирования.
Реализация алгоритма сортировки вставками на языке C++ представлена на рис. Г.3. Последние четыре оператора этой
программы требуют, чтобы объект namelist был создан как объект, имеющий "тип" (класс) list, после чего новый объект
должен выполнить операции getnames, sortnames и printnames. Предыдущий фрагмент программы определяет свойства, ко-
торыми должны обладать любые объекты "типа" (класса) list. В частности, любой такой объект должен содержать массив
символов под названием names и три процедуры – getnames, sortnames и printnames. Обратите внимание, что определения
этих
// Программа обработки списка
#include <iostreain.h>
#include <string.h>
const int ListLength = 10;
// Все объекты класса list содержат список имен и три открытых
// метода, которые называются getnames, sortlist и printnames.
class list
{ private:
char names[ListLength][9];
public:
void getnames()
{ int i;
for(i = 0; i< ListLength; *+i)
cin » names[i];
}
void sortlist()
{ int i,j;
char pivot[9];
for(i = 1; i < ListLength; ++i)
{ strcpy(pivot, names[i]);
j = i - 1;
while((j >= 0) && (stremp(pivot, names[j]) < 0))
{ strcpy(names[j+1], names[j]);
--j;
}
strcpy(names[j+1],pivot);
}