П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций





НазваниеП. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций
страница8/18
Дата публикации20.09.2013
Размер0.64 Mb.
ТипКонспект
100-bal.ru > Информатика > Конспект
1   ...   4   5   6   7   8   9   10   11   ...   18

Структура программы на C++. Функции.


Программа на языке C++ состоит из функций, описаний и директив препроцессора. Одна из функций должна иметь имя main, программа начинает выполняться с первого оператора этой функции. Тело функции является блоком. В отличие от Паскаля функции не могут быть вложенными.

Простейшее определение функции выглядит так:

<тип> <имя функции> (<спецификация формальных параметров>)

{

<операторы>

}

Функция может не возвращать никакого значения, в этом случае в качестве ее типа указывается void (например, функция main).

Возврат вычисленного значения функции осуществляется оператором

return <выражение>;

Если функция имеет тип void, оператор return может отсутствовать.

При вызове функции вместо списка формальных параметров помещается список фактических параметров:

<имя функции> (<список фактических параметров>);

Списки формальных и фактических параметров должны быть согласованы по количеству, порядку следования и типам.

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

Замечание: в прототипе могут отсутствовать имена формальных параметров, достаточно лишь указать их типы.

Пример 1: Вычислить сумму последовательности отличных от нуля целых чисел, после которой следует число нуль (признак конца последовательности).

#include

void main()

{

int a, S=0;

cout << “\nВведите a: ”; cin >> a;

while (a!=0)

{

S+=a;

cout << “\nВведите a: ”; cin >> a;

}

cout << “Сумма=” <

}
Пример 2: В последовательности из n целых чисел вычислить произведение чисел, попадающих в отрезок [b, c].

#include

void main()

{

int n, a, b, c, P=1;

cout << “\nВведите n: ”; cin >> n;

cout << “\nВведите b c: ”; cin >> b >>c;

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

{

cout << “Введите a: ”; cin >> a;

if ((a>=b)&&(a<=c)) P*=a;

}

cout << “Произведение=” <


}

Замечание: в приведенном алгоритме предполагается, что хотя бы одно из чисел попадает в указанный отрезок.

Структурированные типы данных в C++

Массивы.


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

<базовый тип> <имя массива> [<целая константа>];

Пример:

long int a, b[5], c;

const int n=10;

double s[n];

Здесь определен массив b, состоящий из 5 элементов типа long int: b[0] b[1] b[2] b[3] b[4] и массив s из 10 элементов типа double: s[0] s[1] … s[9].

При определении массив может быть инициализирован:

int a[5]={2, -3, 5, 4, 38};

Во многих случаях удобно бывает определить новый тип-массив:

typedef long int mas[10];

mas a,b;

В программе элементы массива представляют собой переменные с индексами.

Пример (ввод и суммирование массива).

#include

void main()

{

const int n=10;

int a[n], S=0;

cout << “\ninput array: ”;

for (int i=0; i

{

cin >> a[i];

S+=a[i];

}

cout << “Summa=” <

}

При работе с массивами необходимо иметь в виду, что в C++ не контролируются значения индексов на предмет выхода за пределы массива. Это означает, что если при обращении к массиву в программе будет сформировано значение индекса, превышающее допустимое, могут быть изменены значения каких-либо других переменных, занимающих смежную с массивом область памяти. Контроль этой ситуации полностью возлагается на программиста.

Двумерные массивы определяются так:

int a [5][3];

В памяти двумерные массивы располагаются по строкам, т.е. так, что быстрее изменяется второй индекс. Это правило распространяется и на массивы большей размерности. При инициализации элементы двумерного массива располагаются в соответствующем порядке, т.е по строкам.

Пример:

int a [2][3]={{1, 6, -3}, //первая строка

{5, 24, 0}}; //вторая строка

Все операции над массивами, включая ввод-вывод и присваивание, выполняются поэлементно.

Пример (ввод двумерного массива):

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

for (int j=0; j<3; j++)

cin >>a[i][j];

1   ...   4   5   6   7   8   9   10   11   ...   18

Похожие:

П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconПрограмма по формированию навыков безопасного поведения на дорогах...
Мама купила 6 шаров красного и голубого цвета. Красных было больше, чем голубых. Сколько шаров каждого цвета могло быть? (2варианта...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconС. П. Филин Концепции современного естествознания: конспект лекций
Конспект лекций соответствует требованиям Государственного образовательного стандарта высшего профессионального образования РФ и...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект лекций раскрывает содержание и структуру учебной дисциплины...
Налоговое право : конспект лекций / сост доцент Р. В. Бобринев; Кузбасский институт экономики и права. – Кемерово, 2011 – 144 с
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций icon«программирование»
Рабочая программа дисциплины «Программирование» /сост. Хатаева Р. С.– Грозный: чгпи, 2011г
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект лекций по философии Часть 1 Античная философия Новосибирск...
Савостьянов А. Н. Конспект лекций по философии / Новосиб гос ун-т. Новосибирск, 2007. Ч. Античная философия. 68 с
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект лекций по курсу хозяйственного права тема Понятие хозяйственного права
Кафедра Истории, социологии и права Назаров Андрей Александрович конспект лекций по курсу хозяйственного права
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект лекций по высшей математике. В 2 частях. Часть М.: Айрис-пресс,...
Баранова Е. С., Васильева Н. В., Федотов В. Л. Практическое пособие по высшей математике. Типовые расчеты. Учебное пособие. — Спб:...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconОпорный конспект лекций Основные понятия, термины, законы, схемы...
Л. Н. Блинов, Н. Н. Ролле. Экология: опорный конспект лекций. Основные понятия, термины, законы, схемы. Спб.: Изд. Спбгпу. 2005....
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconН. Д. Серова структурное подразделение детский сад Конспект
Универсальные учебные действия: 1 формирование основ социально ценных личностных и нравственных качеств: уважение и вежливое отношение...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций icon12 Достижения компьютерной техники 15 Программирование
Программирование 3
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект урока л. Н. Андреев «Кусака». Сострадание и бессердечие...
«моу шалакушская средняя школа» структурное подразделение «Шожемская основная школа»
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconКонспект лекций Владимира Климентьева по истории философии, отредактированный...
Рекомендовано Министерством общего и профессионального образования Российской федерации в качестве учебника для студентов высших...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconТеория организации Конспект лекций для студентов специальности «Менеджмент организации»
Макарова н. Н. Теория организации. Конспект лекций с практическими заданиями для студентов специальности "Менеджмент организации....
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconЕленевский А. Г., Соловьева М. П., Тихомиров В. Н. Ботаника высших или наземных растений
Он является обязательным для студентов 2 курса очной и заочной форм обучения на биолого-химическом факультете и рассчитан на очном...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconФгбоу впо «агту» Обособленное структурное подразделение «Волго-Каспийский...
Полное наименование: Обособленное структурное подразделение «Волго-Каспийский морской рыбопромышленный колледж» федерального государственного...
П. А. Соловьева в. Г. Шаров структурное программирование на с++ Конспект лекций iconПисьменный Д. Т. Конспект лекций по теории вероятностей, математической...
Письменный Д. Т. Конспект лекций по теории вероятностей, математической статистике и случайным процессам. 3-е изд. М.: Айрис-пресс,...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск