Команда return 0; которая завершает выполнение функции с возвратом значения 0, определяемого стандартом (для функции main), как код успешного завершения.
При запуске непосредственно из графического окружения, отведенное программе окно может закрыться сразу же после завершения программы. Функция getchar ожидает ввод пользователя, тем самым “откладывая” завершение программы (return). Какие именно действия могут прервать это ожидание – зависит от системы, однако скорее всего, нажатие клавиши Enter завершит эту функцию в любом случае.
Точка в конце программы, в отличии от Pascal, не ставится.
int – целое
long – длинное целое
short – короткое целое
unsigned – беззнаковое целое
float – вещественное
double – длинное вещественное
char – литерное
В отличии от Pfscal, в С логических переменных нет.
Примеры описания переменных:
int k;
char a, b, c;
double x;
Примеры описания констант:
int: 17;
float: 1.25;
char: “a”;
Стандартная библиотека ввода-вывода языка C подключается с помощью директивы препроцессора #include
Форматный ввод данных пользователя с клавиатуры производится функцией scanf .
scanf (CONTROL, ARG1, ARG2, …);
Данная функция осуществляет чтение символов, вводимых с клавиатуры, и преобразование их во внутреннее представление в соответствии с типом величин. В функции scanf CONTROL и список аргументов (ARG1, ARG2, …) присутствуют обязательно.
Символьную последовательность, вводимую с клавиатуры и воспринимаемую функцией scanf , принято называть входным потоком. Функция scanf разделяет этот поток на отдельные вводимые величины, интерпретирует их в соответствии с указанным типом и форматом и присваивает переменным, содержащимся в списке аргументов. Список аргументов – это перечень вводимых переменных, причем перед именем каждой переменной ставится значок &. Это знак операции “взятие адреса переменной”.
CONTROL заключается в кавычки (то есть является текстовой константой) и состоит из списка спецификаций. Каждая спецификация начинается со знака %, после которого следует спецификатор.
Для ввода числовых данных используются следующие спецификаторы:
d – для целых десятичных чисел (тип int);
u – для целых десятичных чисел без знака (тип unsigned int);
f – для вещественных чисел (тип float) в форме с фиксированной точкой;
е – для вещественных чисел (тип float) в форме с плавающей точкой (с мантиссой и порядком).
Разделителем в потоке ввода между различными значениями может быть любое количество пробелов, а также другие пробельные символы: знак табуляции, конец строки. Только после нажатия на клавишу Enter вводимые значения присвоятся соответствующим переменным. До этого входной поток помещается в буфер клавиатуры и может редактироваться.
Форматный вывод на экран производится функцией printf .
printf (CONTROL, ARG1, ARG2, …);
CONTROL заключается в кавычки (то есть является текстовой константой) и может включать в себя произвольный текст, управляющие символы и спецификаторы формата.
Список аргументов (ARG1, ARG2, …) может отсутствовать или же состоять из выражений, значения которых выводятся на экран (в частном случае из констант и переменных). Управляющие символы влияют на расположение на экране выводимых знаков. Признаком управляющего символа является значок \.
Вот их список:
\n – перевод строки;
\t – горизонтальная табуляция;
\r – возврат курсора к началу новой строки;
\a – сигнал-звонок;
\b – возврат на один символ (одну позицию);
\f – перевод (прогон) страницы;
\v – вертикальная табуляция.
Спецификатор формата определяет форму внешнего представления выводимой величины.
Вот некоторые спецификаторы формата:
%c – символ;
%s – строка;
%d – целое десятичное число (тип int);
%u – целое десятичное число без знака (тип unsigned);
%f – вещественные числа в форме с фиксированной точкой;
%е – вещественные числа в форме с плавающей точкой.
Соответствие между спецификаторами формата и элементами списка аргументов устанавливается в порядке их записи слева направо.
Использование функций ввода и вывода смотрите в примерах программ далее по тексту.
Унарные операции – применяются к одной переменной.
++ – увеличение на единицу (x++ выдаёт старое значение, ++x – новое значение).
– – – уменьшение на единицу, аналогично операции ++.
Бинарные операции – стоят между двумя переменными или числами.
* – умножение.
/ – деление.
% – остаток от деления (только для int или long).
+ – сложение.
— – вычитание.
Для того, чтобы использовать эти функции в начале программы должно стоять:
#include
abs (x) – возвращает абсолютное значение целого аргумента x.
acos (x) – арккосинус x.
asin (x) – арксинус x.
atan (x) – арктангенс x.
cos (x) – косинус x.
exp (x) – ex.
fabs (x) – абсолютное значение вещественного аргумента x.