Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по информатике9.doc
Скачиваний:
16
Добавлен:
02.05.2014
Размер:
333.31 Кб
Скачать

If (выражение2) break;

};

Оператор break вызывает завершение самого внутреннего включающего его оператора while, do-while, for, switch.

i=0;

while (i<=(N-1))

{

if (mas[i]==FindElement)

break;

i++;

}

Оператор continue позволяет пропускать оставшуюся часть цикла while, do-while, for и начинать новую итерацию.

while (выражение1)

{

If (выражение2) continue;

Оператор перехода по метке может использоваться,

например, когда нужно выйти из вложенного цикла

goto метка;

метка:

for (…)

for(…)

{

if (…)

goto метка;

}

метка:

Формат оператора:

return [выражение] ;

Оператор return завершает выполнение функции, в которой он задан, и возвращает управление в вызывающую функцию, в точку, непосредственно следующую за вызовом. Функция main передает управление операционной системе. Значение выражения, если оно задано, возвращается в вызывающую функцию в качестве значения вызываемой функции. Если выражение опущено, то возвращаемое значение не определено.

13.Организация форматированного ввода-вывода в языке С++

Кроме потокового ввода-вывода с помощью cin, cout можно использовать форматированный ввод-вывод с использованием scanf, printf в стиле языка C. Для этого следует подключить библиотеку stdio.h (#include <stdio.h>) который обеспечивает независимость кода программы от особенностей ввода информации на конкретной электронно-вычислительной машине.

Для ввода исходных данных используется функция scanf(). В ней требуется указать формат вводимых значений, а также адреса переменных, которым они будут присвоены. Параметры любой функции перечисляются через запятую. В первом параметре функции scanf в виде строкового литерала задается спецификация формата вводимой величины, соответствующая типу переменной. Спецификация %f соответствует типу float, %d - типу int, %c – типу char. В качестве второго параметра функции передается адрес переменной, по которому будет помещено вводимое значение. Операция взятия адреса обозначается &.

scanf(“%d”,&h);

Функция printf() выполняет вывод переданного ей в качестве параметра строкового литерала, то есть последовательности любых символов в кавычках, на стандартное устройство вывода (дисплей). В ней два параметра. Первый, имеющий вид строкового литерала, задает вид и формат выводимой информации. Второй параметр представляют собой имя переменной. Пример вывода

printf(“%d”,h);

В данном примере выводится значение целочисленной переменной h. Все символы литерала, кроме спецификации формата %d, выводятся на дисплей без изменений. При выводе форматные спецификации будут заменены конкретными значениями переменных.

Для оформления вывода используются также специальные знаки (\t-знак табуляции, \n- переход на другую строку и др).

Например,

printf(“%d\t”,h);

printf(“%d\n”,a);

printf(“%d”,b);

14.Общее понятие одномерных массивов данных. Описание одномерных массивов на языке С++.

Массив представляет собой последовательность элементов одного типа, объединенных под одним общим именем.

Каждому элементу массива соответствует индекс - целое неотрицательное число, определяющее его номер в последовательности. Первому элементу массива соответствует индекс 0. Элементы массива размещаются в памяти последовательно, друг за другом, как показано на следующем рисунке:

Из объявления массива компилятор должен получить информацию о типе элементов массива и их количестве. Объявление массива может иметь два формата:

спецификатор_типа описатель [константное _выражение];

спецификатор_типа описатель [ ];

Описатель - это идентификатор массива.

Спецификатор типа задает тип элементов объявляемого массива. Элементами массива не могут быть функции и элементы типа void.

Константное выражение в квадратных скобках задает количество элементов массива. Константное выражение при объявлении массива может быть опущено в следующих случаях:

• при объявлении массив инициализируется,

• массив объявлен как формальный параметр функции,

• массив объявлен как ссылка на массив, явно определенный в другом файле.

Массивы, элементы которых однозначно определяются одним индексом, называются одномерными. В языке С++ определены только одномерные массивы, но, поскольку элементом массива может быть другой массив, можно определить и многомерные массивы. В описании многомерного массива каждое константное выражение определяет число элементов по данному измерению массива, т.е. объявление двухмерного массива содержит два константных выражения, трехмерного - три и т.д.

Пример :

double b[5]; /* массив (вектор) из 5 элементов имеющих

тип double b[0], b[1], b[2], b[3], b[4] */

int a[2][3]; /* двухмерный массив целочисленных элементов

a[0][0], a[0][1], a[0][2], a[1][0], a[1][1], a[1][2] */

int w[3][3] ={ { 2, 3, 4 }, { 3, 4, 8 }, { 1, 0, 9 } }; /* инициализация двухмерного массива, во внутренних фигурных скобках задаются значения элементов каждой строки */

Стандартный доступ к элементам массива:

mas[1]= 25;

mas[2]= mas[1]- 81;

В C++ имя массива представляет собой не только имя, которое используется в программах, но и является адресом, по которому в памяти находится первый элемент массива. Поэтому к элементам массива можно обращаться следующими способами:

int m[6] = {4, 3 , 1, 4, 7, 8 };

m[3] или (m + 3)[0] - обращение к 4-му элементу массива.

Возможны и другие варианты:

(m + 0)[3]

(m + 2)[1]

(m - 2)[5]

В символьном литерале (символьной строке) всегда находится на один элемент больше, чем записано в строке инициализации, так как последним из элементов должен быть нуль-символ (управляющая последовательность ’\0’).

char str[] = "объявление символьного массива";

char str[] = ""; -пустая строка содержит всего лишь один нуль-символ.

char city [ ] = "Москва"; - Массив city будет содержать строку из 7 элементов: 6 букв и 0-символ.

Такой способ инициализации не подходит, если в дальнейшем в массив city потребуется занести название другого города с длинным названием.

Можно описать название города по-другому.

char city1[ ] = {'М', 'о', 'с' , 'к' , 'в' , 'а' } ;

15.Типовые алгоритмы обработки одномерных массивов данных на языке С++

  • Инициализация массива

  • Поиск элементов образцу

  • Нахождение суммы (количества) элементов

  • Нахождение максимального (минимального) элемента

  • Сортировка элементов массива

#include <iostream.h>

main () {

int n=5;

int nd[5] = { 0,1,2,3,4 };

for (int i=0; i<=n; i++)

cout << "i=" << i << " nd[i]=" << nd[i] ; }

int main() {

const int N=10,

Нахождение мин

int x;

float a[N];

for (x=0; x<N;x++) cin >> a[x]);

float Min=a[0];

for (x=1; x<N;x++)

if (a[x]<Min) Min=a[x];

cout << Min;

}

Данные возникают в неупорядоченной форме. Перед обработкой целесообразно упорядочить их по значениям ключевого атрибута.

Процедуру упорядочивания называют операцией сортировки – одна из основных операций по формированию данных. Условие упорядоченности записей в массиве определяется следующим образом:

p(i) ≤ p(i+1) – упорядоченность по возрастанию;

p(i) ≥ p(i+1) – упорядоченность по убыванию

Упорядоченные данные эффективны для организации быстрого поиска информации.