Лаб_С++ общая
.DOC
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального
образования «Северо–Кавказский государственный технический университет»
Методические указания
к лабораторным работам
по курсу «Информатика».
Программирование на языке высокого уровня С/C++
для студентов специальности
факультета ФИТТ
Ставрополь
2009
Методические указания к лабораторным работам по дисциплине «Информатика» составлены в соответствии с Государственным Образовательным Стандартом высшего профессионального образования для студентов специальностей 230700.62, .
Данные методические указания включают в себя 8 лабораторных работ для изучения курса «Информатика». Эти работы помогут студентам освоить как базовые понятия программирования на алгоритмическом языке Си (интегрированная среда, программы линейной, разветвляющейся и циклической структуры), так и более сложные вопросы (массивы, структуры, функции, работа с файлами).
В каждой лабораторной работе указывается ее цель, изложены краткие теоретические сведения, приведены примеры программ, которые помогут в разработке самостоятельных программ согласно вариантам заданий. Ответы на приведенные в методических указаниях контрольные вопросы способствуют закреплению материала.
Составители: к.т.н., доцент Гахова Н.Н., ст.преп. Вельц О.В.
Рецензент:
Лабораторная работа 1.1
Работа с интегрированной средой Dev C++
Цель и содержание работы: Приобретение навыков работы в интегрированной среде Dev C++; освоение процесса ввода, отладки и выполнения программы на языке С и С++.
Теоретическое обоснование
Основные сведения о среде Dev C++
Язык Си использует технологию структурного программирования, в основе которого лежит модульный принцип создания программ и использование базовых структур программирования. Язык С++ был разработан как объектно–ориентированное расширение языка Си и спроектирован в близком соответствии между его типами, операциями и операторами.
Интегрированная среда Dev C++ является одной из свободнораспространяемых версий языка, упрощающих процедуру ввода, отладки и выполнения программ на С и С++. Окно интегрированной среды Dev C++ содержит 4 основные части: строка команд меню, окно редактирования программ, область сообщений компилятора, строку состояния (Рисунок 1).
Строка команд меню содержит стандартные режимы: File(Файл), Edit(Редактирование), Search(Поиск), View (Вид), Project(Проект), Execute (Компиляция и исполнение программы), Options(Параметры), Tools(Инструменты), Window(Окно), Help(Помощь). Каждый режим содержит меню команд и соответствующие “горячие “ клавиши, а так же пиктограмму инструментов, выполняющих эти команды и находящиеся строкой ниже. Рассмотрим основные команды.
Меню File содержит команды: Open(Открыть), при помощи которого открывается существующий программный файл или проект; New(Создать) –создается новый проект; Save(Сохранить) – сохраняется редактируемый файл; Save as(Сохранить как) – файл сохраняется под новым именем. Команда Close закрывает редактируемый проект, команда Exit служит для выхода из Среды.
Рисунок
1 – Общий вид интегрированной среды
Dev
C++
Меню Edit содержит пункты Cut (Вырезать), Copy (Копировать), Paste (Вставить), которые служат для вырезания, копирования, вставки выделенного фрагмента текста, как в любом текстовом редакторе.
Меню Execute содержит команду компиляции Compile (горячие клавиши [CTRL]+[F9]); команду Run – исполнить (клавиша [F9]); команду компилировать и исполнить([CTRL]+[F10]); команду отладить Debug([F8]).
Meню Help позволяет вызвать справочную систему ( [F1]). Для получения справки о конкретной функции следует установить курсор на любой символ заголовка функции и нажать [CTRL]+[F1].
Окно редактирования программ используется для ввода и редактирования программ на С/C++. В строке состояния указывается номер позиции и строки, в которой находится курсор, а так же общее количество строк программы. В области сообщений компилятора будут выведены сообщения о найденных ошибках при компиляции программ и их местонахождении, о ходе выполнения компоновки модулей.
Программы на языке С/С++
Программа на языке С++, как и С, состоит из директив препроцессора, функций и описаний. Одна из функций должна иметь имя main. Выполнение программы начинается с первого оператора этой функции. Простейшее определение функции имеет следующий формат:
Тип _ возвращаемого _ значения имя ( [ параметры ] )
{операторы, составляющие тело функции }
Рассмотрим пример простой программы: Вычислить длину окружности, площадь круга и объем шара радиуса R (R– любое целое число). Для вычислений воспользуемся формулами: C=2πR; S= πR2; V= πR3×4/3
Программа на С++ имеет вид:
#include<iostream.h> //включение заголовочного файла ввода и вывода данных
main() //главная функция
{
int R; //описание переменной целого типа
float Pi,C, S, V; //описание переменных вещественного типа
cout <<" R="; // вывод на экран комментария
cin >>R; //ввод значения гипотенузы в целом формате
Pi=3.14; // присвоение значения переменной Pi
C=2*Pi*R; // вычисление значений
S= Pi*R*R;
V=4./3.*S*R;
cout <<'\n'<<" C="<< C <<" S="<<S<<'\n'; //вывод значений
cout <<'\n'<<" V ="<<V <<'\n';
return 0;
}
Дадим пояснение. Комментарий в программе на языке Си++ служит для разъяснения действий основных строк программы и не влияет на компиляцию. Однострочный комментарий действует от двух символов // (слэш) до конца строки. Многострочный комментарий заключается в пары символов /* и */ .
Вторая строка программы #include<iostream.h> является директивой компилятора для подключения к программе из файла iostream.h средств связи с библиотечными функциями потокового ввода–вывода: ввод данных с клавиатуры cin и вывод данных на экран дисплея cout.
Как было сказано ранее, программа на языке Си++ состоит из ряда функций, из которых функция main (главная) является обязательной и служит точкой входа в программу. В круглые скобки заключаются параметры функции, причем, если даже список параметров пуст (как в данном случае), наличие круглых скобок обязательно.
В фигурные скобки заключается составной оператор (несколько операторов). Для придания тексту программы наибольшей наглядности желательно, чтобы открывающая и соответствующая ей закрывающая фигурные скобки печатались на одном уровне, а заключенный между ними текст, сдвигается на 1–2 символа вправо, вложенный блок также сдвигается вправо и т.д. Образуется иерархия вложенных блоков, придающая программе на языке C/С++ характерный вид.
Операции чтения из потока >>(inserting) и записи в поток << (extracting) содержатся в заголовочном файле iostream.h и служат для вывода на экран и ввода с клавиатуры соответственно. Признак конца строки <<’\n’ служит для перевода на новую строку и является разделителем при выводе данных. Можно также использовать манипулятор endl (сокращение end line), который выполняет переход на новую строку при выводе значений.
При вводе–выводе в Си++ компилятор распознает типы данных и выводит их в удобной форме, поэтому формат данных не указывается. В отличие от других языков в Си учитывается регистр при определении имени переменной, т.е. s и S – разные переменные.
Оператор return 0; служит для выхода из функции main в Интегрированную Среду, 0 является признаком успешного окончания программы. Завершает текст программы закрывающая фигурная скобка, означающая конец функции main.
Аппаратура и материалы: персональный компьютер не ниже Pentium–2, операционная система Windows XP, дискета, интегрированная среда Dev C++.
Методика и порядок выполнения работы
-
Средствами WINDOWS создайте свою папку, на указанном преподавателем диске, в которой будут храниться исходные тексты программ на языке С++.
-
С помощью ярлыка Dev C++ или через Пуск>Все программы> DevCрр запустите интегрированную среду.
-
Рассмотрите появившееся окно, разверните его на весь экран и изучите первую и вторую части теоретического обоснования.
-
Для появления заготовки, упрощающей ввод программы, как на рисунке1 в окне редактирования, выберите в меню File, команду New source file или щелкните по соответствующему инструменту (Рисунок 2)
New source file Сохранение Компиляция и выполнение
Рисунок 2– Используемые инструменты
-
В заготовке подключение библиотеки #include <stdlib.h> используется для выполнения функции задержки system("PAUSE"), обеспечивающей просмотр результата выполнения программы.
-
Используя заготовку, наберите недостающие строки программы из теоретической части.
-
Сохраните программу, выбрав команду File/Save или щелкнув по соответствующему инструменту (Рисунок 2). В появившемся окне найдите свою папку и в окошке имя файла введите имя программы, например, lab1. Автоматически к имени файла будет добавлено расширение .cpp, которое для компилятора является признаком того, что программа составлена на языке С++, а расширение .c – признак программы на языке Си.
-
Компилируем и выполняем программу, нажав CTRL+F9 или щелкнув по соответствующему инструменту (Рисунок 2). Если в Вашей программе будут выявлены ошибки, то о них будет сообщение в Области сообщений, с указанием номера строки и типа ошибки. После щелчка по строке с объяснением ошибки, в программе выделится соответствующая строка, где надо найти и исправить ошибку. После исправления всех ошибок надо обновить сохранение программы с прежним именем и снова повторить компиляцию и запуск программы на выполнение. Если ошибок нет, то в появившемся окне надо щелкнуть по клавише Continue и программа запустится на выполнение. В новом окне на появившееся приглашение надо ввести исходные данные (если их несколько, то через пробел) и нажать Enter, после чего на экране появится результат. Учитывайте, что значение угла введено в радианах, и дробную часть надо вводить через точку. Запишите в отчет исходные и результативные данные. Для возврата в Интегрированную Среду, нажмите любую клавишу.
-
Запустите еще раз программу с другими исходными данными.
-
Вернитесь в среду Dev C++, измените программу таким образом, чтобы выводились не только результаты, но и исходные данные. Выполните и обновите сохранный вариант программы. Результаты запишите в отчет.
-
Сохраните созданную программу под другим именем. Откорректируйте введенный пример программы в стиле языка Си. При этом она должна иметь следующий вид:
#include <stdio.h> //включение заголовочного файла форматного ввода и вывода данных
#include <stdlib.h>
main() //главная функция
{ int R;
float Pi,C, S, V; //описание переменных вещественного типа
printf (“\n Введите R= ”); // вывод сообщения на экран
scanf (“%d “,&R); // ввод значений
Pi=3.14;
C=2*Pi*R; // вычисление значений
S= Pi*R*R; V=4./3.*S*R;
printf (“\n C=%7.2f \n S=%7.2f \n V=%7.2f “,C, S,V);
system("PAUSE");
return 0;
}
Пояснение: Строка программы #include <stdio.h> является директивой компилятора для включения заголовочного файла stdio.h, в котором содержатся средства ввода–вывода с внешними устройствами, отсутствующие в самом языке Си. Функции printf и scanf содержатся в заголовочном файле stdio.h и служат для вывода на экран и ввода с клавиатуры соответственно. Символ & в функции scanf указывает на адрес вводимой переменной. Ввод и вывод переменных вещественного типа производится в формате f, целого – в формате d. Признаком форматного вывода в функции printf является %. При выводе между знаком процента и форматной переменной f можно включить общую ширину поля вывода и число позиций после десятичной точки. В данной программе результаты выводятся в поле из 7 позиций каждая: одна отводится на десятичную точку, две – на цифры дробной части и 4 позиции – на знак и целую части числа.
-
Результаты запишите в отчет и сравните с предыдущими при вводе одинаковых исходных данных.
Содержание отчета и его форма
Выполните все описанные пункты задания, письменно оформите отчет, который должен содержать:
-
тему, цель лабораторной работы;
-
основные действия по работе в Интегрированной среде Dev С++;
-
выполненные программы, исходные и результативные данные.
Контрольные вопросы и защита работы
1) Что такое редактирование, компиляция и исполнение программы?
2) Основные команды меню Интегрированной cреды.
3) Для чего необходим комментарий и как он оформляется?
4) Что такое заголовочные файлы? Пример.
5) Как объявляются переменные в программах?
6) Структура программы на языке Си++.
7) В каком случае несколько операторов заключаются в фигурные скобки?
Защита лабораторной работы включает в себя демонстрацию выполненных программ, подготовленный отчет и устный ответ на контрольные вопросы.