Лекция

advertisement
Лекция
Тема :Составление линейных программ на С++ и получение
результатов(2ч)
Цель занятия. Изложить основы и принципы структурного
программирования, ознакомить с функциями ввода-вывода в С/С++, .
познакомить с интерфейсом среды.
Ключевые слова: директивы, переменные, константы, директивы
препроцессору, заголовочный файл,
План лекции.
1.
2.
3.
4.
Структура программы, директивы препроцессору
Структура программы на языке С/С++.
Функции printf() и scanf().
Ввод-вывод на консоль.
Имена, переменные, константы. Встроенные типы данных: целый,
вещественный, символьный. Операции и выражения. Стандартные
математические функции С/С++, написание простейших арифметических
выражений.
Программа на С++ состоит из функций, описаний, и директив препроцессора.
Функция – участок кода оформленный как блок, в котором
производятся те или иные действия. Можно рассматривать функции, как
некоторые «кирпичики», из которых строится тело программы. Каждая
функция обладает, как и математический её аналог, неким значением, то есть
величиной одного из допустимых типов, которую она возвращает, будучи
вызванной из некоторого места в программе. Выполнение программы
начинается с функции main, которая обязательно должна присутствовать в
теле программы.
В простейшем случае функция задаётся так:
тип_возвращаемого_значения имя (/параметры/)
{
здесь следуют операторы, составляющие тело функции
}
Функция main также соответствует этому определению, поэтому в
простейшем случае программа может выглядеть так:
int main ( ) {
return 0;
}
Заголовок говорит о том, что функция main не принимает никаких
параметров (так как список в круглых скобках отсутствует) и возвращает в
вызвавшую её программу значение типа int, то есть целое число. Оператор
return указывает, какое именно значение возвращает функция, в данном
случае ноль. Если вместо int написать в заголовке void, то программа будет
выглядеть следующем образом:
void main(void) {
return;
}
Как вы видите, теперь в скобках указан не пустой список, а void. Это
совершенно аналогичный способ указать программе, что функция не
принимает параметров. Так как возвращать какое-то значение она также не
должна, в операторе return ничего не указано, функция просто что-то делает
и передает управление вызвавшей ее программе. Если вы знакомы с языком
Паскаль, то наверное заметили, что функция типа void аналогична процедуре
Паскаля.
Но вышеописанная программа совершенно ничего не делает. Попробуем
добавить в нее некоторый работоспособный код.
#include <stdio.h>
int main () {
int i;
printf(“Введите число:\n”);
scanf(“%d”, I);
printf(“Вы ввели число %d\n”, i);
return 0;
}
Программа на языке Си, как уже говорилось, имеет следующую структуру:
#директивы препроцессора
.........
#директивы препроцессора
функция а ( )
{операторы }
функция в ( )
{ операторы }
void main ( )
//функция, с которой начинается выполнение программы
{операторы
описания
присваивания
функция
пустой оператор
составной оператор
оператор выбора
операторы циклов
перехода }
Директивы препроцессора - управляют преобразованием текста
программы до ее компиляции. Исходная программа, подготовленная на СИ в
виде текстового файла, проходит 3 этапа обработки:
1) препроцессорное преобразование текста ;
2) компиляция;
3) компоновка (редактирование связей или сборка).
Следующая программа выводит число 1001 на ваш экран:
#include <iostream.h>
void main(void)
{
cout<<1001;
}
Программа использует эту операцию четыре раза для отображения числа
1001 на вашем экране:
#include <iostream.h>
void main(void)
(
cout << 1 << 0 << 0 << 1;
}
Следующая программа с помощью cout выводит символьную строку и число:
#include <iostream.h>
void main(void)
{
cout << "Мое любимое число равно " << 1001;
}
Наконец, следующая программа выводит адрес издательства "Jamsa Press" в
несколько строк:
#include <iostream.h>
void main(void)
{
cout << "Jamsa Press" << endl;
cout << "2975 South Rainbow, Suite I" << endl;
cout << "Las Vegas, NV 89102" << endl;
}
Download