Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lr1-7.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
537.12 Кб
Скачать
    1. Теоретическая часть

Visual С++ 2010 является средой разработки программ для операционных систем семейства Windwos. Среда позволяет разрабатывать два принципиально отличающихся вида приложений: программы, которые выполняются на компьютере как «родные» (native); программы, выполняющиеся под управлением общеязыковой исполняющей среды (Common Language Runtime- CLR) Net Framework. В данных методических указания будут рассматриваться программы первого типа.

Среда Visual C++ позволяет создавать программы и компоненты различных типов, одним из простейших которых является консольные приложения (программы командной строки). Программы данного типа не используют графический интерфейс, а для взаимодействия с пользователем используются только клавиатура и экран. Выбор изучения именно консольного приложения обусловлен тем, что данная работа знакомит с языком С++ и средой Visual C++, поэтому нет необходимости перегружать работу особенностями приложений с графическим интерфейсом.

Приступим к разработке первого консольного приложения. Запустим среду программирования Visual С++. Создайте новый проект, выбрав пункт меню «Файл»-«Создать»-«Проект»(Shift+Ctrl+N).

Рисунок 1.1 – Создание нового проекта

Далее выберите шаблон «Консольное приложении Win32».

Рисунок 1.2 – Выбор шаблона консольного приложения

В поле «Имя» укажите название проекта, выберите папку для хранения файлов проекта и нажмите кнопку «OK». В следующем диалоговом окне нажмите «Готово».

Рисунок 1.3 – Обозреватель решений

В итоге у Вас на экране должны отображаться окно «Обозреватель решений» и содержимое файла «Lr1.cpp». Если файл Lr1.cpp не отображается, то дважды щелкните ЛК мыши на название файла в обозревателе решений. Для отображения номеров строк выберите пункт меню «Сервис»-«Параметры» и в появившемся окне выберите «Текстовый редактор»-«С/С++»-«Общие», затем поставьте галочку «Номера строк» в разделе «Показывать».

Автоматически созданная программа ничего не делает. Произведем модификацию исходного кода:

#include "stdafx.h"

#include <iostream>

int _tmain(int argc, _TCHAR* argv[])

{

std::cout<<"Hello World!!\n";

return 0;

}

Разберем исходный код. В первой строке директива include добавляет к коду содержимое файла stdafx.h в то место, где она расположена. Директива #include <iostream> подключает библиотеку с базовыми операциями ввода-вывода. Далее идет описание функции _tmain. Программа может содержать большое количество функций, главной из которых является функция main. В данном примере функция обозначена как _tmain, что означает что используется кодировка Unicode.

Оператор std::cout осуществляет вывод на экран вывода строки.

Для сборки решения нажмите клавишу «F7». В результате в окне вывода должен появится текст следующего вида:

1>------ Построение начато: проект: Lr1, Конфигурация: Debug Win32 ------

1>Построение начато 02.09.2012 16:27:43.

1>InitializeBuildStatus:

1> Создание "Debug\Lr1.unsuccessfulbuild", так как было задано "AlwaysCreate".

1>ClCompile:

1> Для всех выходных данных обновления не требуется.

1> Lr1.cpp

1>ManifestResourceCompile:

1> Для всех выходных данных обновления не требуется.

1>Manifest:

1> Для всех выходных данных обновления не требуется.

1>LinkEmbedManifest:

1> Для всех выходных данных обновления не требуется.

1> Lr1.vcxproj -> D:\ASP\ООП\Лабораторная работа\C++\Lr1\Debug\Lr1.exe

1>FinalizeBuildStatus:

1> Файл "Debug\Lr1.unsuccessfulbuild" удаляется.

1> Обращение к "Debug\Lr1.lastbuildstate".

1>

1>Построение успешно завершено.

1>

1>Затраченное время: 00:00:01.61

========== Построение: успешно: 1, с ошибками: 0, без изменений: 0, пропущено: 0 ==========

Если в проекте присутствуют ошибки, то они сообщаются пометкой «error». В данном случае ошибки нет и построение выполнено успешно. В следующем примере показан результат построения, когда вместо оператора cout было написано cout1:

1>d:\asp\ооп\лабораторная работа\c++\lr1\lr1\lr1.cpp(10): error C2039: cout1: не является членом "std"

1>d:\asp\ооп\лабораторная работа\c++\lr1\lr1\lr1.cpp(10): error C2065: cout1: необъявленный идентификатор

1>

1>СБОЙ построения.

1>

1>Затраченное время: 00:00:00.69

========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========

Скомпилированная программа находится в папке debug.

Для запуска программы нажмите клавиши «Ctrl+F5» .

Рисунок 1.4 – Результат выполнения программы

Усложним нашу программу. Пусть она рассчитывает площадь прямоугольника. Для этого нужно знать длину и ширину прямоугольника. Соответственно, объявим 3 переменные вещественного типа float: a,b, S. Для ввода данных воспользуемся оператором cin. Вариант программы представлен ниже:

#include "stdafx.h"

#include <iostream>

int _tmain(int argc, _TCHAR* argv[])

{

setlocale(LC_ALL,"Rus"); //поддержка кириллицы

float a,b,S;

std::cout<<"Программ расчета площади прямоугольника!!!\n";

std::cout<<"Введите длину прямоугольника:";

std::cin>>a;

std::cout<<"Введите ширину прямоугольника:";

std::cin>>b;

S=a*b;

std::cout<<"Площадь прямоугольника равна:"<<S<<"\n";

return 0;

}

Обратите внимание, что для C++ имеет значение регистр букв, т.е. s и S это две разные переменные.

Для выполнения лабораторной работы понадобятся знание операторов цикла и условия.

Оператор while имеет следующий формат:

while ( выражение ) оператор

Выражение определяет условие повторения тела цикла, представленного простым или составным оператором. Выполнение оператора начинается с вычисления выражения. Если оно истинно (не равно false), выполняется оператор цикла.

Пример:

while (a<10)

{

a=a+1;

b=b*2;

}

Условный оператор if используется для разветвления процесса вычислений на два направления. Формат оператора:

i f ( выражение ) оператор_1; [else оператор_2;]

Сначала вычисляется выражение, которое может иметь арифметический тип или тип указателя. Если оно не равно нулю (имеет значение true), выполняется первый оператор, иначе — второй. После этого управление передается на оператор, следующий за условным.

Одна из ветвей может отсутствовать, логичнее опускать вторую ветвь вместе с ключевым словом еlse. Если в какой-либо ветви требуется выполнить несколько операторов, их необходимо заключить в блок, иначе компилятор не сможет понять, где заканчивается ветвление. Пример:

if (a!=0)

{

b=2;

c=23;

}

else d=2;

В работе предполагается осуществить запрос на продолжение цикла. Пользователь должен нажать клавишу «1» для продолжения цикла. Ниже приведен пример кода, реализующий данное действие:

char s=’1’;

while (s==’1’)

{

std::cin>>s;

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]