- •Введение
- •Изучение среды программирования
- •Теоретические сведения
- •Среда программирования
- •Задание к работе
- •Содержание отчета
- •Контрольные вопросы
- •Переменные и операции над ними
- •Теоретические сведения
- •Основные определения
- •Операции над целыми числами
- •Вещественные числа и операции над ними
- •Задание к работе
- •Содержание отчета
- •Контрольные вопросы
- •Конструкция выбора, логические и другие операции
- •Теоретические сведения
- •Конструкция выбора и составная инструкция
- •Операторы отношения и логические операторы
- •Остальные операторы
- •Задание к работе
- •Содержание отчета
- •Контрольные вопросы
- •Конструкции циклов
- •Теоретические сведения
- •Цикл while
- •Цикл for
- •Конструкция в конструкции
- •Задание к работе
- •Свойства массивов
- •Структуры
- •Задание к работе
- •Операции с указателями
- •Указатели и массивы
- •Указатели и структуры
- •Задание к работе
- •Использование указателей для передачи результата и аргумента
- •Задание к работе
- •Содержание отчета
- •Контрольные вопросы
- •Библиографический список
- •644046, Г. Омск, пр. Маркса, 35в
Задание к работе
-
Создать на учебном компьютере свою папку.
-
Набрать, скомпилировать и запустить рассмотренный в теоретической части пример программы.
-
Изменить программу так, чтобы она выводила на экран приветствие автору программы (например, «Здравствуй, Вася»).
-
Создать свою учетную запись на сервере тестирования
-
Пройти пробный тест
Содержание отчета
Отчет должен содержат описание всех выполненных действий (команд) и рисунки, показывающие результат этих действий. Количество действий должно быть не меньше количества глаголов в пункте 1.2.
Контрольные вопросы
-
Как в командой строке перейти в нужный каталог?
-
Каким образом можно скомпилировать программу?
-
Как запустить скомпилированную программу?
-
Как в системе тестирования обозначаются варианты ответов на вопрос в том случае, если нужно выбрать только один из них?
-
Как в системе тестирования обозначаются варианты ответов на вопрос в том случае, если можно выбрать несколько правильных вариантов?
-
Переменные и операции над ними
Цель работы: изучение понятий «переменная» и «тип» языка С, встроенных типов и операций над ними, основных функций библиотеки ввода-вывода.
Теоретические сведения
-
Основные определения
Рассмотрим исходный код программы, приведенный на рис.
Рис. Пример программы
Во 2 строке находится функция «main()», которая выполняется при вызове программы. В 3 и 10 строках находятся операторные (фигурные) скобки, группирующие команды, которые должна выполнить эта функция.
Рассматриваемая программа просит пользователя ввести целое число, а после этого печатает на экране это число увеличенное 2.
Число, которое ввел пользователь, компьютер должен сохранить в памяти, чтобы потом с ним можно было выполнять какие-либо действие. Для того чтобы знать, о каком именно сохраненном в памяти числе идет речь, месту в памяти дается имя (например, в нашей программе это имя «a»). Часть памяти, которая имеет имя и служит для хранения какого-либо значения, называется переменная.
Переменные могут хранить разные значения. Иногда в программе нужно хранить небольшие числа (например, чтобы записать текущий день месяца), иногда большие (например, скорость света), и часто программы работают с переменными которые хранят не числа, а, например, буквы. Поэтому каждая переменная должна иметь тип, который характеризует какой объем памяти нужно выделить под эту переменную и какие действия можно с ней выполнять.
Перед тем как программа сможет выполнить какие-либо действия, она должна знать с какими переменными и какого типа она будет работать. Поэтому сначала нужно объявить, какие переменные и какого типа мы будем использовать.
В строке 4 программы приведен пример объявления переменной. При объявлении сначала указывается тип переменной, а затем, через пробел, ее имя. В конце строки ставиться знак «;», чтобы указать, что действие закончено. Законченное действие, оканчивающееся точкой с запятой, называется инструкцией. В программе мы использовали тип «int». Переменные такого типа позволяют хранить целые числа, и выполнять над ними соответствующие действия.
В 5 строке программы используются уже знакомая нам функция печати сообщения на экран, которая приглашает пользователя ввести число. Функции содержат инструкции, описывающие действия, которые компьютер должен выполнить. В скобках передаются аргументы функции. Аргументы это параметры выполнения функции, в данном случае это текст сообщения, который должен быть напечатан.
В 6 строке вызывается функция записывающая число, введенное пользователем, в переменную «a». На данном этапе мы не будем разбирать подробно, как она работает, достаточно запомнить эту строчку и использовать ее, если нужно ввести число в программу.
В 7 строке функция печати вызывается с двумя аргументами, перечисленными через запятую. Первый аргумент – текст сообщения для печати. Этот текст должен изменяться в зависимости от значения переменной «a». Поэтому в тексте есть специальная пометка – «%i». Встретив знак процента, функция печати текста должна понять, что нужно печать не символ «i», а целое число указанное во втором аргументе. Вторым аргументом мы передали переменную «a», поэтому вместо символов «%i» будет напечатано ее значение.
В 8 строке переменная «a» увеличивается 2. Обратите внимание, что с точки зрения математики эта строка лишена смысла, число не может равняется самому себе увеличенному на 2. В этой записи знак «=» не означает, что левые и правые части выражения равны, а означает, что нужно подсчитать значение выражения справа от знака равно, и записать его в переменную, записанную слева от этого знака.
Знаки «+» и «=» являются операторами. Значения, над которыми выполняет свое действие оператор, называется операндами. С точки зрения программиста оператор отличается от функции только формой записи. Аргументы функции указываются в скобках, а операнды оператора записываются с двух сторон от него. Функция обычно имеет записанное буквами имя, а оператор обозначается специальными символами. Поэтому операторы позволяют записывать арифметические выражение почти так, как это принято в математике, и эта форма привычна для людей.
Рассмотренная строка (8) позволяет понять, почему именованное место в памяти называется переменной. Действие в этой строке буквально изменило содержимое этого места в памяти.
В выражениях помимо переменных могут участвовать и константы. Например, число «2» в этой строке тоже будет храниться в памяти компьютера, но оно не измениться в течение всего времени выполнения программы.
В 9 строчке мы опять вызываем функцию печати, чтобы она напечатала измененное значение переменной «a».
Осталось рассмотреть 1 строку. В ней находится директива компилятора. Директивы обозначают те действия, которые компилятор должен выполнить во время компиляции программы, а не во время исполнения. Директивы обычно начинаются с символа «#».
Директива «include» подгружает в программу код, находящийся в указанном далее файле. Этот код позволяет использовать функции из библиотеки «stdio», описанной в файле «stdio.h». Библиотека это набор функций, которые может вызывать программист. Например, в библиотеке «stdio» находятся функции для ввода и вывода значений на экран или в файл, такие как «printf» и «scanf». Эта библиотека является стандартной для языка С и многие компиляторы (например, GCC) подключают ее автоматически (т.е. 1 строку можно убрать).
Последним термином, который нужно определить, является термин идентификатор. Идентификатор это набор букв, цифр и других символов, служащий именем переменных, функции и других элементов языка. На этот набор накладываются определенные ограничения. В языке С идентификатор должен начинаться с буквы или с символа подчеркивания и не совпадать с ключевыми словами. Строчные и прописные буквы в языке С считаются различными (переменные «a» и «A» – разные).