Лекция основы си++ 7




Скачать 1.94 Mb.
Название Лекция основы си++ 7
страница 1/18
Дата публикации 08.06.2014
Размер 1.94 Mb.
Тип Лекция
literature-edu.ru > Курсовая работа > Лекция
  1   2   3   4   5   6   7   8   9   ...   18
А.А. Богуславский, С.М. Соколов

Основы программирования на языке Си++

Часть 1. Введение в программирование на языке Си++

(для студентов физико-математических факультетов педагогических институтов)

Коломна, 2002

ББК 32.97я73 Рекомендовано к изданию

УДК 681.142.2(075.8) редакционно-издательским советом

Б 73 Коломенского государственного

педагогического института

Богуславский А.А., Соколов С.М.

Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. - Коломна: КГПИ, 2002.-490 с.

Пособие предназначено для обучения студентов, обладающих навыками поль­зовательской работы на персональном компьютере, основным понятиям и методам современного практического программирования. Предметом изучения курса является объектно-ориентированное программирование на языке Си++ в среде современных 32-х разрядных операционных систем семейства Windows. Программа курса разбита на 4 части: (1) Введение в программирование на языке Си++; (2) Основы программи­рования трехмерной графики; (3) Объектно-ориентированное программирование на языке Си++ и (4) Программирование для Microsoft Windows с использованием Visual C++ и библиотеки классов MFC.

После изучения курса студент получает достаточно полное представление о содержании современного объектно-ориентированного программирования, об уст­ройстве современных операционных систем Win32 и о событийно-управляемом про­граммировании. На практических занятиях вырабатываются навыки программирова­ния на Си++ в интегрированной среде разработки Microsoft Visual C++ 5.0.

Рецензенты:

И.П. Гиривенко - к.т.н., доцент, зав. кафедрой информатики и вычислительной тех­ники Рязанского государственного педагогического университета им. С.А. Есенина.

А.А. Шамов - к.х.н., доцент кафедры теоретической физики Коломенского госу­дарственного педагогического института.

СОДЕРЖАНИЕ

КРАТКОЕ ОПИСАНИЕ УЧЕБНОГО КУРСА "ОСНОВЫ ПРОГРАММИРОВАНИЯ
НА ЯЗЫКЕ СИ++" 5


ЛЕКЦИЯ 1. ОСНОВЫ СИ++ 7

  1. Несколько замечаний О назначении программирования 7

  2. Происхождение языка СИ++ 9

  3. Стандарт ANSI СИ++ 9

  4. Среда разработки Microsoft Developer Studio Visual С++ 10

  5. Пример программы на СИ++ 10

  6. Выполнение ввода/вывода данных и присваивание значений 12

  7. Управление порядком выполнения команд С ПОМОЩЬЮ оператора if 13

  8. Оформление ИСХОДНОГО текста 15

  9. Сводка результатов 15

10. Упражнения 15

ЛЕКЦИЯ 2. ПЕРЕМЕННЫЕ, ТИПЫ ДАННЫХ И ВЫРАЖЕНИЯ 18

  1. Идентификаторы 18

  2. ТИПЫ данных 18

  3. ВЫВОД ВЕЩЕСТВЕННЫХ ЧИСЕЛ НА ЭКРАН 22

  4. Описания, константы И перечисления 24

  5. Присваивание И выражения 26

  6. Сводка результатов 28

  7. Упражнения 28

  8. Приложения 29

ЛЕКЦИЯ 3. ФУНКЦИИ И ПРОЦЕДУРНАЯ АБСТРАКЦИЯ 31

  1. Назначение подпрограмм 31

  2. Определение НОВЫХ функций 31

  3. Способы передачи параметров внутрь функций 33

  4. Полиморфизм И перегрузка функций 35

  5. Процедурная абстракция И "хороший" СТИЛЬ программирования 36

  6. Модульное программирование 36

  7. Сводка результатов 38

  8. Упражнения 39

ЛЕКЦИЯ 4. ТЕКСТОВЫЕ ФАЙЛЫ И ПОТОКИ ВВОДА/ВЫВОДА 41

  1. Назначение файлов 41

  2. ПОТОКИ ввода/вывода 41

  3. Проверка ошибок выполнения файловых операций 43

  4. символьный ввод/вывод 44

  5. Проверка достижения конца файла при операциях ввода 45

  6. Передача ПОТОКОВ функциям В качестве параметров 47

  7. Операторы ввода/вывода ">>" И "<<" 48

  8. Сводка результатов 50

  9. Упражнения 50

ЛЕКЦИЯ 5. ОПЕРАТОРЫ ВЕТВЛЕНИЯ И ЦИКЛЫ 52

  1. Логические значения, выражения И функции 52

  2. ЦИКЛЫ "FOR", "WHILE" И "DO...WHILE" 53

  3. Множественное ветвление И оператор "switch" 55

  4. БЛОКИ И ОБЛАСТЬ ВИДИМОСТИ ПЕРЕМЕННЫХ 56

  1. Замечание О вложенных циклах 59

  2. Сводка результатов 59

  3. Упражнения 60

ЛЕКЦИЯ 6. МАССИВЫ И СИМВОЛЬНЫЕ СТРОКИ 63

  1. Назначение массивов 63

  2. Передача массивов В качестве параметров функций 66

  3. Сортировка массивов 68

  4. Двумерные массивы 69

  5. Символьные строки 70

  6. Сводка результатов 73

  7. Упражнения 73

ЛЕКЦИЯ 7. УКАЗАТЕЛИ 75

  1. Назначение указателей 75

  2. Переменные типа "массив". Арифметические операции с указателями 79

  3. Динамические массивы 81

  4. Автоматические И динамические переменные 82

  5. Связные СПИСКИ 82

  6. Сводка результатов 86

  7. Упражнения 87

ЛЕКЦИЯ 8. РЕКУРСИЯ 89

  1. Понятие рекурсии 89

  2. Простой пример рекурсии 89

  3. Как выполняется рекурсивный ВЫЗОВ 90

  4. Еще три примера рекурсии 92

  5. Рекурсия И ЦИКЛЫ 93

  6. Рекурсия В структурах данных 94

  7. Рекурсивная реализация алгоритма быстрой сортировки 94

  8. Сводка результатов 97

  9. Упражнения 97

ЛЕКЦИЯ 9. СОСТАВНЫЕ ТИПЫ ДАННЫХ 100

  1. Назначение составных ТИПОВ данных 100

  2. Описание И инициализация структур 100

  3. Доступ К компонентам структуры через указатель 103

  4. Массивы И структуры 104

  5. Перегрузка операторов 105

  6. Применение структур ДЛЯ реализации стека 107

  7. Сводка результатов 111

  8. Упражнения 112

ПРИЛОЖЕНИЕ. КРАТКОЕ РУКОВОДСТВО ПО СРЕДЕ РАЗРАБОТКИ DEVELOPER
STUDIO VISUAL C++ 113


  1. Создание НОВОГО проекта 113

  2. Добавление в проект нового исходного файла 114

  3. Сборка проекта 115

  4. Запуск НОВОГО приложения 116

ЛИТЕРАТУРА 117

Краткое описание учебного курса "Основы программиро­вания на языке Си++"

Развитие современных технологий программирования предполагает владение программистом широким набором практических навыков, среди которых одними из основных можно считать знание языка программирования, среды разработки и сис­темных технологий базовой операционной системы. Рассматриваемый учебный курс предназначен для начальной подготовки программиста, владеющего языком про­граммирования Си++ применительно к разработке программ в ОС семейства Win32.

При анализе доступных в Интернет зарубежных курсов, связанных с обучени­ем практическому программированию в рамках подготовки по специальностям Com­puter Science, оказалась заметна следующая тенденция: существуют курсы по изуче­нию языка Си++, курсы по изучению объектно-ориентированного программирования на базе, чаще всего, Java и реже, Си++, и практически стандартный курс "Операцион­ные системы", посвященный структуре Unix-совместимых операционных систем. Ха­рактерной особенностью зарубежных университетских курсов является отсутствие разделов, посвященных изучению практического программирования в среде коммер­ческих ОС массового распространения, в первую очередь, ОС Windows. С другой стороны, изучение программирования для этих ОС предлагается рядом коммерческих учебных организаций, но сроки обучения порядка 3-5 дней предполагают обучение уже грамотного специалиста, имеющего навыки программирования в какой-либо дру­гой ОС или на другом языке программирования.

В сегодняшних российских условиях, не отрицая необходимости фундамен­тальной подготовки специалистов по вычислительной технике в области теории алго­ритмов и устройства вычислительных и программных систем, можно отметить полез­ность изучения технологий практического программирования - использования сред разработки и библиотек программирования для ОС массового распространения. Этим обусловлена направленность рассматриваемого курса - начальная подготовка про­граммистов на Си++ для среды ОС Windows.

Сложность обучения практическому программированию, на наш взгляд, за­ключается в трудности сочетания обучения абстрактным понятиям программирова­ния (таким, как структуры данных, понятие алгоритма, основные компоненты алго­ритмического языка, методология проектирования программного обеспечения), с изучением технологий и сред программирования на базе какой-либо конкретной ОС. Эти практические технологии пребывают в постоянном развитии, поэтому может быть сложно выделить какие-либо конкретные средства разработки в качестве пред­мета изучения.

Несмотря на широкое распространение сред быстрой разработки ПрО (напри­мер, Visual Basic, Inprise Builder и Inprise Delphi), выбор их в качестве учебной среды представляется нецелесообразным, т.к. в этих средах кажущаяся простота разработки ПрО касается только формирования каркаса приложения из набора готовых компо­нент, а устройство этих компонент или изменение структуры каркаса требует серьез­ных знаний не только по структуре базовой ОС, но и по системной архитектуре среды программирования.

Программа данного курса предназначена для обучения лиц, имеющих навыки пользовательской работы на персональном компьютере, основным понятиям и мето­дам современного практического программирования. Предметом изучения курса яв­ляется объектно-ориентированное программирование на языке Си++ в среде совре­менных 32-х разрядных операционных систем семейства Windows. Программа курса

разбита на 4 части:

  1. Введение в программирование на языке Си++ (9 лекций)

  2. Основы программирования трехмерной графики (8 лекций)

  3. Объектно-ориентированное программирование на языке Си++ (9 лекций)

  4. Программирование для Microsoft Windows с использованием Visual C++ и
    библиотеки классов MFC (9 лекций)

На каждое лекционное занятие должно быть предусмотрено минимум одно практическое (2 академических часа) и еще, в среднем, 4 часа самостоятельных заня­тий. Т.о., на изучение курса отводится 72 лекционных часа, 72 практических (т.о., 144 аудиторных часа) и 144 часа самостоятельных занятий.

Методические материалы для курса сформированы на основе примерно 10-ти зарубежных изданий, часть из которых переведена на русский язык.

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

Вторая часть курса посвящена применению языка Си++ для программирования задач в конкретной предметной области - трехмерной компьютерной графики. В ка­честве базовой графической библиотеки выбрана библиотека OpenGL, являющаяся открытым стандартом в данной области. Изучение этой библиотеки демонстрирует методику освоения готового инструментария, сформированного в результате приме­нения методов структурного проектирования в конкретной предметной области. По­нятия, относящиеся к машинной графике, понятие каркаса приложения и обработки событий иллюстрируются простыми примерами и в дальнейшем используются при изучении программирования в среде Windows.

Третья часть курса изучается после усвоения студентами процедурного про­граммирования. Основные вопросы объектно-ориентированного программирования на Си++ излагаются на примере программирования консольных приложений Win32. Рассматриваются элементарные приемы объектно-ориентированного проектирования - проектирование на основе распределения обязанностей, метод CRC-карточек.

В четвертой части курса изучается архитектура операционных систем семейст­ва Windows и методы программирования для этих ОС. Примерно треть этой части по­священа рассмотрению основных компонент операционных систем Windows 9x/NT, знакомству с базовыми сервисами операционных систем и программированию для этих ОС на языке Си++ на уровне Win32 API. В оставшейся части рассматриваются приемы программирования для ОС Windows на базе библиотеки классов MFC. Эта библиотека классов является промышленным стандартом, упрощающим разработку программ и использование Win32 API. Подробно описывается каркас приложения MFC, основные классы этой библиотеки, приемы использования этих классов в соб­ственных программах, архитектура однодокументных приложений "документ/вид".

После изучения курса студент получает достаточно полное представление о содержании современного объектно-ориентированного программирования, об уст­ройстве современных операционных систем Win32 и о событийно-управляемом про­граммировании. На практических занятиях вырабатываются навыки программирова­ния на Си++ в интегрированной среде разработки Microsoft Visual C++ 5.0.

ЛЕКЦИЯ 1. Основы Си++

1. Несколько замечаний о назначении программирования

Программирование - это техническая творческая деятельность, цель которой заключается в решении важных для человека задач или выполнении определенных действий с помощью компьютера. На рис. 1 представлена идеализированная схема решения типичной задачи программирования.

Подробное описание

задачи или необходимых

действий

КОМПЬЮТЕР

Решение задачи или выполнение действий

Рис. 1. Схема решения задачи с помощью компьютера.

В рамках такой схемы необходимыми компонентами компьютера являются центральный процессор, устройства ввода/вывода и память (рис. 2).





0










2




3




4




3









УСТРОЙСТВА ВВОДА/ВЫВОДА

ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР

ПАМЯТЬ

Рис. 2. Основные компоненты компьютера.

Конечно, в действительности дело обстоит не так просто, как показано на рис. 1. Например, "подробное описание (спецификация) задачи" на естественном язы­ке для компьютера не годится (в настоящее время). Более того, для решения задачи на компьютере недостаточно полного описания задачи, необходимо также снабдить компьютер информацией о том, как именно следует решать задачу - т.е. составить ал­горитм. Для описания алгоритмов решения задач или алгоритмов выполнения каких-либо действий (например, управление роботом-манипулятором) с помощью компью­тера применяются языки программирования.

На рис. 3 показана более подробная схема решения задачи с помощью компью­тера, в которой учтена необходимость использования языка программирования. Ил­люстрация этой схемы на конкретном примере приведена в таблице 1.

Существует большое количество различных языков программирования и много способов их классификации. Например, "языками высокого уровня" считаются те языки, синтаксис которых сравнительно близок к естественному языку, в то время как синтаксис "низкоуровневых" языков содержит много технических подробностей, свя­занных с устройством компьютера и процессора.

ВЫСОКИЙ УРОВЕНЬ, НЕ ЗАВИСИТ ОТ АППАРАТУРЫ

НИЗКИЙ УРОВЕНЬ, ЗАВИСИТ ОТ АППАРАТУРЫ

СРЕДА РАЗРАБОТКИ VISUAL C++

Специфи­кация

Алгоритм

Язык програм­мирования высокого уровня

Внутренний код данного компьютера

Исполняемый файл

ОБЪЕКТНЫЙ КОД

КОМАНДЫ ПРОЦЕССОРА

РУССКИЙ ЯЗЫК

Си++, Си, Паскаль

(формальный стиль)

ПСЕВДОКОД

(неформальный стиль)

(полуформальный стиль)

Рис. 3. Схема решения задачи на компьютере с использованием языка программирования. Таблица 1. Основные этапы решения задачи по проверке числа на простоту.

Спецификация задачи

Требуется определить, является ли данное число простым.

Алгоритм

Ввести x

Для каждого целого числаzиз диапазоне от 1 доx Если остаток от деления x на z равен 0, то вывести сообщение "число не простое" и закончить работу

Если такого числа z не найдено, то вывести сообщение "число простое" и закончить работу

Описание алгоритма на языке высокого уровня

#include int main () { int x; cout << "Введите число:\n"; cin » x; for (int z=2; z

{ cout « "Это не простое число.\n"; return 0;

} cout « "Это простое число.\n"; return 0; }

Объектный код (внут­ренний код конкретного компьютера)

Двоичные команды процессора (частично)

Исполняемый файл для конкретного компьютера

Двоичные команды процессора (полностью)

"Императивные" или "процедурные" языки позволяют программисту описать, в какой последовательности компьютер будет выполнять отдельные шаги алгоритма и, таким образом, решать задачу и выдавать на экран результат. "Декларативные" языки предназначены больше для описания самой задачи и желаемого результата, а не дей­ствий компьютера.

"Объектно-ориентированные языки" рассчитаны на применение особого под­хода к описанию задач, согласно которому в задаче выделяются некоторые "объекты" с характерным для них "поведением" и взаимодействующие между собой. Один из

8

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

Радикальные приверженцы различных языков и стилей программирования иногда делают экстравагантные заявления, выделяющие семейство языков или один язык как исключительный и идеально подходящий для любых задач. Например, до­вольно распространено мнение, что объектно-ориентированный подход наиболее близок к способу решения задач человеком. По этому поводу вы со временем сможе­те составить собственное мнение, т.к. абсолютно истинного, очевидно, нет.

2. Происхождение языка Си++

Язык Си++ был разработан в начале 1980-х гг. Бьерном Страуструпом из ком­пании AT&T Bell Laboratories. Си++ основан на языке Си. Два символа "++" в назва­нии - это игра слов, символами "++" в языке Си обозначается операция инкремента (увеличение значения переменной на 1). Т.о., Си++ был задуман как язык Си с рас­ширенными возможностями. Большая часть языка Си вошла в Си++ как подмножест­во, поэтому многие программы на Си можно скомпилировать (т.е. превратить в набор низкоуровневых команд, которые компьютер может непосредственно выполнять) с помощью компилятора Си++.

При классификации языков программирования язык Си вызывает некоторые трудности. По сравнению с ассемблером, это высокоуровневый язык. Однако Си со­держит много низкоуровневых средств для непосредственных операций с памятью компьютера. Поэтому язык Си отлично подходит для написания эффективных "сис­темных" программ. Но программы других типов на Си могут оказаться довольно сложными для понимания, и есть ряд ошибок, которым программы на Си особенно подвержены. Дополнительные объектно-ориентированные возможности Си++ были добавлены в Си, в частности, для устранения этих недостатков.

3. Стандарт ANSI Си++

Национальный Институт Стандартизации США (American National Standards Institution, ANSI) разработал "официальные" стандарты для многих языков програм­мирования, в том числе для Си и Си++. Эти стандарты стали общепринятыми и они имеют очень большое значение. Программу, целиком написанную на ANSI Си++, га­рантированно можно запустить на любом компьютере, для которого имеется компи­лятор ANSI Си++. Другими словами, стандарт гарантирует переносимость программ на языке ANSI Си++.

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

4. Среда разработки Microsoft Developer Studio Visual С++

Известно, что лучший способ изучения языка программирования заключается в том, чтобы писать на нем программы и проверять, как они работают на компьютере. Для этого необходимы несколько программ:

  • Текстовый редактор, с помощью которого можно набирать и редактировать
    исходный текст программ на Си++.

  • Компилятор. Эта программа выполняет преобразование исходного текста в
    машинные команды, которые компьютер может непосредственно выпол­
    нять.

  • Компоновщик, который собирает отдельные скомпилированные части про­
    граммы в единое целое и, при необходимости, добавляет к ним компоненты
    из готовых библиотек. В результате компоновки получается готовая к за­
    пуску программа - исполняемый файл.

  • Отладчик, с помощью которого легче искать ошибки в программе. Ошибки
    могут обнаружиться как при компиляции, так и во время работы програм­
    мы.

В данном курсе изучения Си++ практические упражнения предполагается вы­полнять в среде разработки программ Microsoft Developer Studio Visual C++ для IBM-совместимых ПК под управлением Windows 95/NT. В этом пакете интегрирова­ны редактор, компилятор, компоновщик и отладчик. Все вместе они образуют единую удобную среду программирования. Краткое описание работы со средой Visual C++ приведено в Приложении.

5. Пример программы на Си++

Ниже приведен исходный текст простой программы на Си

// В языке Си++ с двойной косой черты начинаются комментарии

// (например, как эта строка). Компилятор игнорирует комментарии,

// начиная от первой черты и до конца строки.

/* Второй способ записи комментариев - после косой черты со звездочкой. После текста комментария надо поставить звездочку, а затем - косую черту. Комментарии, записанные подобным образом, могут занимать больше одной строки. */

/* В программе ОБЯЗАТЕЛЬНО должно быть достаточное количество комментариев! */

/* Эта программа запрашивает у пользователя текущий год, возраст пользователя и еще один год. Затем программа вычисляет возраст пользователя, который будет у него во втором введенном году.*/

#include

int main() {

int year_now, age_now, another_year, another_age;

cout « "Введите текущий год и нажмите ENTER.\n"; cin » year_now;

cout « "Введите свой возраст (в годах). \n"; cin » age_now;

10

cout « "Введите год, для которого вы хотите узнать свой возраст.\n"; cin » another_year;

another_age = another_year - (year_now - age_now); if (another_age >= 0)

{

cout « "B " « another_year « " году вам будет "; cout « another_age « "\n"; }

else {

cout « "B " « another year « " вы еще не родились!\n"; }

return 0; }

Программа 5.1.

Некоторые свойства программы 5.1 являются обычными для большинства про­грамм на Си++. Программа начинается (после комментариев) с оператора

#include

Этот оператор называется "директивой include". До компилятора исходный текст обрабатывается препроцессором - специальной программой, которая модифи­цирует текст программы по специальным командам - директивам. Директивы пре­процессора начинаются с символа "#". Директива include предназначена для вклю­чения в исходный текст содержимого другого файла. Например, в программу 5.1 включается файл iostream.h, содержащий описания функций стандартной библиоте­ки ввода/вывода для работы с клавиатурой и экраном. (Стандартные библиотеки язы­ка Си++ будут рассматриваться позже).

Алгоритм, записанный в программе 5.1, очень простой. Поэтому структуру программы легко представить в виде списка последовательно выполняемых команд (операторов). Схематично программу, содержащуюся после директивы #include, можно представить в виде:

int main ()

{

Первый оператор;

Последний оператор; return 0;

Подобная структура является общей для всех программ на Си++. Каждый опе­ратор в теле программы завершается точкой с запятой. В хорошо разработанной большой программе большинство операторов являются обращениями (вызовами) к подпрограммам, которые записываются после функции main () или в отдельных файлах. Каждая подпрограмма (функция) имеет структуру, подобную функции main (). Но функция main () в каждой программе только одна. Именно с нее начина­ется выполнение программы. (Подробнее функции будут рассматриваться далее.)

В конце функции main () записана строка:

11

return 0;

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

В программе-примере используются четыре переменные:

year_now, age_now, another_year и another_age

Переменные в программировании отличаются от математических переменных. Они используются как символические имена "фрагментов оперативной памяти ком­пьютера". При выполнении программы в различные моменты времени переменные могут хранить различные значения. В программе 5.1 первое упоминание четырех пе­ременных содержится в строке с оператором описания переменных:

int year_now, age_now, another_year, another_age;

Этот оператор уведомляет компилятор, что для хранения четырех переменных типа "целое число" (integer - int) требуется выделить необходимое количество памя­ти. Эта область памяти будет зарезервирована в течение выполнения оставшейся час­ти программы. Переменные всегда должны быть описаны до первого использования. В программировании хорошим стилем считается описание всех переменных, исполь­зуемых в подпрограмме, в начале этой подпрограммы. В Си++ есть несколько раз­личных типов переменных, и они будут обсуждаться немного позже.

6. Выполнение ввода/вывода данных и присваивание значений

После компиляции программы ее можно запустить на выполнение. Результат выполнения на экране будет выглядеть примерно так:

Введите текущий год и нажмите ENTER.

2000

Введите свой возраст (в годах).

21

Введите год, для которого вы хотите узнать свой возраст.

2017

В 2017 году вам будет 38

Первая, третья, пятая и седьмая строки выдаются на экран программой с по­мощью следующего оператора:

cout « Выражение1 « Выражение2 « ... « ВыражениеN;

Этот оператор выводит на экран сообщение:

Выражение1 Выражение2 ... ВыражениеN Последовательность операторов

cout « Выражение1 ; cout « Выражение2 ;

cout « ВыражениеN;

12

приводит к аналогичному результату. Если между выражениями требуется вставить пробелы или новые строки, то их нужно указать явно, с помощью символов " " и " \ n " соответственно.

Числа, показанные выше в примере выдачи на экран полужирным шрифтом, бы­ли напечатаны пользователем. В показанном примере оператор

cin » year_now;

приводит к тому, что переменной year_now присваивается значение 2000. Это проис­ходит после того, как пользователь напечатает "2000" и нажмет клавишу Enter. В программе есть еще места, где переменным присваиваются значения, в том числе оператор присваивания:

another_age = another_year - (year_now - age_now);

Операция "=" означает "присвоить переменной, стоящей слева от знака равен­ства, значение, указанное справа". Проверка на равенство в Си++ обозначается двой­ным символом: "==".

7. Управление порядком выполнения команд с помощью оператора if

В нескольких последних строках программы (до строки "return 0") записано:

if (another_age >= 0)

cout « "В " « another_year « " году вам будет "; cout « another_age « "\n";

else

cout « "В " « another year « " вы еще не родились!\n";

Оператор ветвления (условный оператор) "if. . . else. . ." выглядит примерно одинаково во всех процедурных языках программирования. В Си++ он называется просто оператором if, и его общая структура такова:

if ( условие ) Оператор1;

ОператорN; else

Опера торN+1;

Опера торN +M;

  1   2   3   4   5   6   7   8   9   ...   18

Добавить документ в свой блог или на сайт

Похожие:

Лекция основы си++ 7 icon Лекция основы Си++ 9
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:...
Лекция основы си++ 7 icon Лекция I и проблема языка и сознания лекция II 31 слово и его семантическое...
Монография представляет собой изложение курса лекций, про* читанных автором на факультете психологии Московского государственного...
Лекция основы си++ 7 icon Лекция психосексуальное развитие. Возрастная динамика взаимоотношения полов 15
Основы семейной психопедагогики (курс лекций) / В. И. Короткий. — Архангельск: М'арт, 2003. — 178 с
Лекция основы си++ 7 icon Лекция Архитектура 32-разрядных ос windows 7
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:...
Лекция основы си++ 7 icon Лекция Основные понятия ооп 7
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:...
Лекция основы си++ 7 icon Лекция №1. Введение. Элементы дифференциальной геометрии. 2
Лекция №5. Множества Жюлиа, множество Мандельброта и их компьютерное представление. 18
Лекция основы си++ 7 icon Лекция на тему: «Современные подходы к содержанию дополнительного образования детей»
...
Лекция основы си++ 7 icon Лекция в Дорнахе 22 мая 1920 года
Канта и протестантизма. Эта лекция вызвала негодование среди членов Лиги, культивировавших и признававших под названием монизма вообще...
Лекция основы си++ 7 icon Курс лекций Лекция Введение в философскую суицидологию. Лекция Общая...
Открыть, в чём состоит суть суицида, наука не в состоянии (по собственной ограниченной природе) и потому должна обращаться за объяснениями...
Лекция основы си++ 7 icon Лекция для слушателей курса «Основы религий»
Я не могу всего этого понять, потому что некоторые пытливые учителя, помню, меня просто одолевали вопросами, где найти, например,...
Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции