- •Введение
- •Глава 1. Основы.
- •Int main()
- •1.2. Методика создания программ в Microsoft Visual Studio.
- •Void main(){
- •1.3. Ввод-вывод.
- •1.4. Переменные и константы.
- •Int I; // объявление целочисленной переменной
- •42 // Десятичная константа
- •0X42 // шестнадцатеричная константа, начинается с 0х
- •042 // Восьмеричная константа, начинается с 0
- •1.5. Арифметические операции.
- •Void main()
- •1.6. Встроенные функции. Математические функции. Состав math.H.
- •Void main()
- •Int rand(void); // функция используется без аргумента
- •Глава 2. Операторы и выражения.
- •2.1. Логические выражения и операторы
- •2.1.1. Оператор if else
- •If (условие)
- •If (условие)
- •2.1.2. Конструкция if else if
- •Int number;
- •Int number;
- •2.1.3. Условный оператор.
- •2.1.4. Оператор switch.
- •Int dvalue;
- •2.2. Операторы цикла.
- •2.2.1. Оператор for
- •Void main()
- •Int I; // создаем переменную цикла
- •Void main()
- •Int I; // переменную цикла можно определить и вне цикла
- •2.2.2. Изменение шага цикла
- •Void main()
- •2.2.3. Цикл while.
- •2.2.4. Цикл do while
- •Void main()
- •2.3. Операторы break и continue
- •Void main()
- •Void main()
- •2.4. Типичные ошибки при использовании операторов цикла
- •Глава 3. Производные типы данных.
- •3.1. Ссылки и указатели.
- •Int test; // объявили целочисленную переменную
- •Int & s_test; // ошибка! ссылка не связана с переменной
- •Int *p1; // объявлен указатель на целое с именем p1
- •3.2. Массивы и строки.
- •Int z[10]; //массив из 10 целых чисел
- •Int ar[3]; // объявлен целочисленный массив из 3 элементов
- •Int varr[4]; // объявление массива
- •3.2.2. Многомерные массивы.
- •Int z[3][4]; //массив из 12 целых чисел
- •3.2.3. Строки
- •Void main()
- •Void main()
- •Void main()
- •Void main()
- •If(strstr(st,st2)) //если подстрока встречается, выводим
- •3.1.5. Динамическое определение одномерных массивов.
- •3.1.6. Динамические двумерные массивы.
- •3.1.7. Указатели, массивы и арифметика указателей.
- •Int tacs[3];
- •Void main()
- •3.2. Структуры
- •Int age; // элементы структуры
- •Int hours;
- •Int mins;
- •Void main()
- •Int hours;
- •Int mins;
- •Void main()
- •4. Функции, определяемые пользователем
- •4.1. Объявление и определение функции
- •Int max(int , int ); // в прототипе достаточно указать только тип и
- •Void main() {
- •Int MyRand(){
- •Int func(){ return 1;} // правильное выражение
- •Int func2(){return 0.146;} // неправильно, 0.146 преобразуется к int с
- •Void swap(int p, int q)
- •Int bigger(int a,int b)
- •4.2. Передача параметров функций
- •5. Заголовочные файлы.
- •6. Работа с файлами
- •6.1 Простой файловый ввод/вывод
- •6.2 Тонкости работы с файлами
- •7.1. Определение классов.
- •Void main()
- •7.2. Как объявлять функции класса?
- •7.3. Конструкторы и деструкторы классов.
- •8. Графика OpenGl.
- •Void callback Draw()
- •Void main()
- •8.1. Создание анимации с помощью библиотеки xgl
- •Приложения Управление выводом
- •Управление шириной вывода
План учебного пособия "Основы программирования на С++"
Введение
Глава 1. Основы
1.1. Структура программы на С++. Комментарии.
1.2. Методика создания программ в Visual Studio.
1.3. Ввод и вывод.
1.4. Переменные, основные типы переменных.
1.5. Операции с переменными.
1.6. Встроенные функции. Математические функции.
Контрольные вопросы.
Глава 2. Операторы и выражения.
Любое выражение может быть преобразовано к оператору, добавлением к нему точки с запятой. ; ‑ пустой оператор.
2.1. Логические операторы и выражения
2.1.1. Оператор if else
2.1.2. Конструкция if else if else
2.2. Операторы цикла
Глава 3. Производные типы данных.
3.1. Массивы и строки.
3.1.2. Многомерные массивы.
3.1.4. Указатели.
3.1.5. Динамическое определение одномерных массивов.
3.1.6. Динамические двумерные массивы.
3.1.7. Указатели, массивы и арифметика указателей.
3.2. Структуры.
Глава 4. Функции определяемые пользователем.
4.1. Вызов функции, параметры функции.
4.2. Передача функций в качестве параметров.
Глава 5. Заголовочные файлы
Глава 6. Работа с файлами.
Глава 7. Классы в С++
Глава 8. Графика. OpenGl.
Глава 9. Этюды для программирования
Приложение 1.
Единственный способ изучать новый язык программирования - писать на нем программы. Брайэн Керниган
Настоящее учебное пособие предназначено для обучения основам программирования и основано на опыте преподавания курсов "Программирование" и "Численные методы" на физическом факультете Калининградского государственного университета. В качестве языка программирования используется стандарт языка С++ ANSI, а в качестве среды программирования ‑ Microsoft Visual Studio. Авторы отдают себе отчет, что для начального обучения программированию данная версия С++ может оказаться излишне сложной, поэтому сознательно ограничились созданием консольных приложений. Примеры программ с использованием классов даются очень кратко в ознакомительной форме. Подобранные в пособие задания и примеры имеют выраженный математический уклон: от основ теории чисел, до классических разделов вычислительной математики и физики. В то же время, в главе …. приведены менее тривиальные задания, решение которых может потребовать от читателя значительных усилий.
Особенностью настоящего пособия является сочетание краткого описания среды программирования и основ языка в первой главе и подборки заданий в остальных частях
Авторы надеются, что данное пособие будет полезно не только физикам и математикам, но и всем, приступающим к изучению программирования.
Введение
Изучить программирование непросто. Изучать программирование на языке С++ непросто вдвойне. Создатель языка С++ Бьёрн Страуструп задумывал его как язык для профессионалов ‑ краткий, хорошо подходящий как для системного программирования так и создания прикладных программ.
Название языка С++ происходит от обозначения оператора инкремента ++ в языке С, который добавляет единицу к значению переменной. Таким образом, С++ подразумевает, что этот язык является новой версией языка С. В языке С++ соединены воедино три различных принципа: процедурное программирование, объектно-ориентированное программирование (представлено таким понятием как класс) и обобщенное программирование (представлено шаблонами). В своем небольшом пособии мы практически ограничиваемся изучением первого из перечисленных принципов, полагая, что учиться программированию следует с освоения навыков алгоритмизации и переводу разработанного алгоритма с естественного языка на язык программирования.
Для облегчения усвоения материала в пособии использованы некоторые специальные элементы оформления, которые должны помочь быстро найти нужную информацию или пропустить материал, который вы не хотите читать прямо сейчас.
Таким значком отмечены определения всех терминов.
Так выделяются советы по наиболее эффективной работе.
Так – важные замечания.
А так – вопросы и упражнения. Упражнения повышенной сложности отмечены значком *.
Глава 1. Основы.
1.1. Структура программы на С++. Комментарии.
Изучение C++ начнем с рассмотрения простейшей программы1, которая выводит на экран сообщение.
// программа first.cpp
#include <iostream.h>
Int main()
{
cout << "Hello!"; /* вывод текста
на экран */
return 0;
}
Для вывода символов используется конструкция cout. После двух символов // начинается пояснительный текст комментария, который игнорируется компилятором. Комментарий может начинаться с любой позиции и действует до конца строки. Наряду с новым типом комментариев действует и старый, применяемый в С. Текст комментария заключается между символами /* и */.
Программа С++ строится из отдельных блоков, называемых функциями. В нашем примере программа очень поста и состоит из одной функции с именем main(). Она содержит следующие элементы:
директиву препроцессора #include
заголовок функции int main()
тело функции, ограниченное фигурными скобками { и }
оператор return, завершающий выполнение функции.
Несколько пояснений. При создании исполняемого кода используется препроцессор - специальная программа, которая обрабатывает исходный файл перед компиляцией. Директива #include <iostream.h> приводит к тому, что в программу добавляется содержимое файла iosteram.h . Обновленный файл обрабатывается на следующем шаге компиляции.
Буквы io в слове iostream означают input/output (ввод/вывод). Помните, программы, которые для ввода и вывода используют конструкции cout и cin (см. раздел 1.3) должны включать файл iostream.h!
Программа на С++ обязательно должна содержать функцию с именем main(). (не MAIN(), Main() и т.д., так как С++ чувствителен к выбору регистра). Вместо int main() допустимо использовать void main(), тогда оператор return в конце главной функции не используется. Выражение void (пустой), так же как и return 0, означает, что функция main не возвращает никаких значений.
Для создания исполняемого файла достаточно набрать код программы в любом текстовом редакторе и обработать специальной программой - компилятором, который переводит конструкции языка в машинные коды. Однако гораздо удобнее использовать для этих целей так называемую визуальную среду разработки, например, Microsoft Visual Studio. Познакомимся с ней подробнее.