- •Занятие 1.Выбор среды программирования. Первая программа!
- •Резюме урока:
- •Задание для практической работы .
- •Занятие 2.Стандартные типы данных. Переменные. Основы ввода и вывода данных.
- •Стандартные функции ввода/вывода данных языка Си.
- •Резюме урока:
- •Задание для практической работы.
- •Переменные и типы данных.
- •Как объявить переменную?
- •Проверь себя:
- •Проверь себя:
- •Как сохранить что-то в перменной?
- •Домашнее Задание
- •Занятие 3. Ввод и вывод данных. Справочники функций.
- •Символьный ввод и вывод данных.
- •Функция putchar.
- •Функции форматного ввода и вывода данных printf и scanf.
- •Спецификаторы формата:
- •Модификаторы формата
- •Управляющие последовательности
- •Резюме урока:
- •Задание для практической работы:
- •Занятие 4. Арифметические выражения и стандартные математические функции. Приоритет операций. Инкремент. Декремент.
- •Оператор присваивания. Арифметические выражения.
- •Операторы инкремента и декримента.
- •Сокращенный вид записи арифметических выражений.
- •Стандартная бибиотека математических функций math.H.
- •Приоритет операций.
- •Резюме урока:
- •Задание для практической работы
- •Занятие 5.Управляющая конструкция if-else. Логические операторы и выражения.
- •Операторы соотношений и логические выражения.
- •Управляющая конструкция if - else.
- •Логические операторы. Сложные условия.
- •Приоритет логических операций.
- •Задание для практической работы:
- •Занятие 6. Оператор множественного выбора switch.
- •Инструкция switch.
- •Резюме урока:
- •Задание для практической работы:
- •Занятие 7.Циклические конструкции. Цикл со счетчиком for.
- •Циклическая конструкция for. (Цикл for)
- •Первое выражение - инициализация счетчика.
- •Второе выражение - условие.
- •Третье выражение - изменение счетчика.
- •Занятие 8.Оформление кода программы на Си.Уроки программирования для чайников.Язык Си.
- •Имена и способы описания переменных.
- •Оформление логических блоков и запись лесенкой.
- •Оформление арифметических выражений и сложных условий.
- •Использование комментариев.
- •Резюме урока:
- •Занятие 9.Циклические конструкции. Циклы while и do-while.
- •Цикл while.
- •Цикл do-while.
- •Зацикливание.
- •Задание для практической работы.
- •Занятие 10. Функции определяемые пользователем.
- •Как задать функцию.
- •Заголовок функции.
- •Тело функции.
- •Резюме урока:
- •Задание для практической работы.
- •Занятие 11. Одномерные массивы.
- •Резюме урока:
- •Задание для практической работы:
- •Занятие 12. Простейшие алгоритмы для работы с одномерными массивами.
- •Поиск минимального элемента в массиве.
- •Сортировка массива.
- •Задание для практической работы.
- •Занятие 13. Азы работы с файлами и потоками. Случайные числа.
- •Занятие 14. Строки и символьные массивы в языке Си.
- •Объявление и инициализация строк.
- •Ввод и вывод строк.
- •Функция gets().
- •Функция fgets().
- •Функции puts(), fputs().
- •Задания для самостоятельной практической работы.
- •Урок 15. Некоторые стандартные функции работы со строками.
- •Функция strlen().
- •Функции сравнения строк.
- •Функции изменения регистра строки.
- •Функции объединения строк.
- •Занятие 16. Указатели.
- •Перевод числа из шестнадцатеричной системы счисления в десятичную.
- •Перевод числа из десятичной в шестнадцатеричную систему счисления.
- •Переменные и их адреса.
- •Указатели.
- •Объявление указателя.
- •Присвоение указателю адреса.
- •Получение значения переменной.
- •Урок 17. Создание динамического массива. Указатели и практическое применение.
- •Занятие 18. Передача одномерных массивов в функцию. Возвращение массива из функции.
- •Первый случай. Передача в функцию статического массива.
- •Второй случай. Передача в функцию динамического массива.
- •Задание для практической работы:
- •Занятие 18. Передача одномерных массивов в функцию. Возвращение массива из функции.
- •Первый случай. Передача в функцию статического массива.
- •Второй случай. Передача в функцию динамического массива.
- •Задание для практической работы:
- •Занятие 19. Двумерные массивы.
- •Что такое двумерный массив?
- •Как работать с двумерным массивом?
- •Как работать с отдельным элементом массива.
- •Зачем нужны двумерные массивы?
- •Практическое задание.
- •Занятие №20. Некоторые особенности цикла for. Оператор последовательного вычисления.
- •I присвоить 0;
- •Занятие 21. Заголовочные файлы.
- •Как создать заголовочный файл.
- •Как поделиться своей программой с друзьями.
- •Практическое задание.
- •Дополнительные материалы к уроку.
- •Занятие 22. Препроцессор. Директивы препроцессора.
- •Чем занимается препроцессор?
- •Как работает препроцессор?
- •Как посмотреть код программы, после обработки препроцессором.
- •Урок 23. Структуры в языке Си.
- •Int book_date[100]; // дата издания
- •Int book_pages[100]; // количество страниц
- •Что такое структура.
- •Int date; // дата издания
- •Int pages; // количество страниц
- •Как объявить структурную переменную (структуру).
- •Как инициализировать структуру.
- •Как обращаться к полям структуры.
- •Практическое задание:
- •Автор||Название||Год издания||Прочитано||Количество страниц||Стоимость
Резюме урока:
научились создавать и управлять проектами в выбранной среде программирования.
написали свою первую, саму простецкую, программу.
ознакомились с некоторыми базовыми конструкциями языков программирования С/С++
узнали основную структуру программ написанных на C/C++
Задание для практической работы .
Перепишите код первой программы, и скомпилируйте её. Добейтесь чтобы у вас всё работало.
Теперь стоит поэкспериментировать с кодом программы:
Удалите строчку с подключением файла stdio.h, посмотрите какую ошибку вам выдаст компилятор, запомните . В будущем пригодиться, особенно если среда программирования на английском.Чтобы потом не спрашивать а что означает данная ошибка. НЕ ЗАБЫВАЙТЕ! После каждого опыта приводить программу снова в рабочее состояние.
Теперь удалите символ ; в какой нибудь строке. И тоже посмотрите, что в этом случае напишет вам компилятор.
А сейчас попробуйте просто внести любую ошибку, например, опечатку или регистр букв измените. Посмотрите на ошибку.
Попробуйте теперь удалить оператор return(0);Посмотрите как ведет себя компилятор в этом случае, какую ошибку выдает.
Занятие 2.Стандартные типы данных. Переменные. Основы ввода и вывода данных.
В этом уроке программирования для начинающих, поговорим о типах данных используемых в программах на С/С++. Разберемся с таким понятием как переменная, и научимся их использовать, немного коснемся темы ввода и вывода данных.
Внимание!
Обновленная версия первой половины данного урока.Типы данных и переменные. Еще более подробное и понятное изложение, дополнительные задания.
Каждая мало-мальски сложная программа производит некоторые операции с данными. Что бы использовать данные их надо где-то хранить. Для этого используется память компьютера. Память компьютера в простейшем своем представлении разбита на ячейки, в них и записываются данные.Каждая такая ячейка имеет свой адрес, компьютер именно так и различает их между собой. Человеку же адресами оперировать неудобно. Поэтому для того что бы использовать их и как-то различать между собой им присваиваются имена.
Переменная это область в памяти компьютера с определенным именем и хранящемся в ней значением.
Во время исполнения программы значение в переменной может изменяться. Если в переменную записывается новое значение, то старое безвозвратно стирается.
Теперь остановимся на типах данных используемых в языке программирования Си.
В одну и туже область памяти можно занести разные значения, например, 3, "три" и т.п. Для нас с вами запись 3+2 и "три плюс два" несут одинаковую смысловую нагрузку, компьютеры же, пока, не настолько умны что бы это понять (и вообще они только 0 и 1 оперируют). Поэтому в каждом языке программирования есть различные типы данных, используемые для различных значений.
В языке программирования Си существует нескольковстроенных "базовых" типов данных для хранения различных данных. Основные типы, это целые числа, вещественные числа, и символы.
Для хранения целых чисел используется встроенный тип данных int, вещественных чисел - типы float и double, символов - тип char.
Каждый их этих типов данных занимает в памяти определенный размер памяти.В зависимости от этого в них могут храниться разные максимальные значения. Следует ориентироваться на следующие показатели (вообще говоря это зависит от компьютера и компилятора)
-128 <= char <= 127
-2147483648 <= int <= 2147483647
+-3.4*10^-38 < float < +-3.4*10^+38
Тип double называется тип с двойной точностью, там можно хранить еще большие вещественные числа.
Как уже отмечалось в первом уроке. Прежде чем использовать переменную в программе её необходимо объявить!
Разберемся с форматом объявления переменных в языке программирования Си. Он выглядит следующим образом.
<тип_переменной> имя_переменной;
Например:
Листинг 2.1
int b; // переменная b целого типа
float t; // переменная t вещественного типа
char w; // переменная w символьного типа
Внимание! Здесь и далее я не буду по возможности писать полный код программы. Т.е. подключаемые заголовочные файлы, заголовок функции main.Это как бы выдержка из кода.
Кстати, в одном объявлении можно сразу объявить несколько переменных, например так
Листинг 2.2
int a,c; // переменная a и переменная c целого типа
И не обязательно две, хоть 5 сразу.
Теперь, после того как переменные объявлены их надо инициализировать, т.е. присвоить им какие то значения. Для этого используется оператор присваивания "=".
Листинг 2.3
int a; // переменная a целого типа
a=5; // присваиваем переменной a значение 5. Теперь в ней записано 5.
Переменные можно инициализировать прямо во время описания, например так:
Листинг 2.5
int a=4;
float b=5.4 , c=3.1;
