- •Министерство образования и науки российской федерации
- •1. Основы алгоритмизации
- •2. Основы программирования на языке Си
- •Типы данных
- •Функции ввода-вывода
- •Условные операторы
- •If (выражение) оператор1;
- •If (выражение)
- •Операторы цикла
- •Оператор switch
- •Операторы прерывания break и continue
- •Массивы
- •Функции
- •1) Способ.
- •2) Способ.
- •Домашнее задание Алгоритмизация и программирование
Типы данных
В Си используются следующие основные типы данных.:
целый тип;
int – целый ( от -32768 до 32767 2 байта)
long int – длинный целый ( 4 байта)
unsigned int – бесзнаковый целый (от 0 до 65535 2байта)
вещественный тип;
float – вещественный одинарной точности ( 4 байта )
double – вещественный удвоенной точности ( 8 байт )
long double - вещественный максимальной точности ( 10 байтов )
символьный тип;
char – символы с кодом от -127 до 128 1 байт
unsigned char –символы с кодом от 0 до 255 1 байт
Значениями символьных переменных являются символьные константы, они эквивалентны целым числам, совпадающими с кодами этих символов.
Например, записи: x=’A’ и x=65 для переменной x типа char эквивалентны, так как код символа ‘A’ по таблице ASCII равен 65.
тип void - неопределенный тип, используется при определении функций, не возвращающих значения.
Диапазон значений для каждого типа зависит от аппаратных средств и соответствующей реализации компилятора языка Си.
Все переменные до их первого использования в программе должны быть определены, то есть для них должна быть выделена память. Мы будем рассматривать переменные автоматической памяти.
Например,
int x, y = 0; float s, a ;
Функции ввода-вывода
Как уже упоминалось выше, сам язык Си не содержит операторов ввода-вывода. Каждая реализация языка сопровождается стандартными библиотечными функциями, обеспечивающими ввод-вывод.
Функции printf() и scanf() осуществляют форматированный вывод на стандартное устройство вывода (монитор) и ввод со стандартного устройства ввода (клавиатура).
Обращение к функции printf() выглядит следующим образом
printf (format, list) ;
где
format – форматная строка, символы которой выводятся без изменений, за исключением управляющих символов и спецификаций формата, начинающихся с символа %.
list – список переменных, значения которых подставляются в спецификации формата (может и отсутствовать)
Спецификации формата задают способ преобразования данных из списка list.
Для задания типа могут использоваться следующие символы:
d - для целых десятичных чисел со знаком;
u - для целых десятичных чисел без знака;
o - для восьмеричных чисел без знака;
x - для шестнадцатиричных чисел без знака;
f - для вещественных чисел со знаком с фиксированной точкой;
c - одиночные символы;
s - строки символов.
Так например, если i = 10, x = 1,45 и y = 123,47, то результатом работы следующей конструкции
printf(i = %d \t x = %f \t y = %f \n, i, x, y);
будет вывод
i = 10 x = 1.45 y = 123.47
Спецификации формата функции scanf() те же самые, что и для функции printf(), однако список list содержит уже не имена переменных, а их адреса. Например, функция
scanf (%d %f, &i, &x);
осуществляет ввод с клавиатуры значений переменных i и x целого и вещественного типов соответственно.
Если же вводится строка символов, то необходимо использовать спецификацию формата %s, но применять операцию & уже не надо.
