Лекция 2 Функции библиотек языка C
stdio.h Заголовочный файл стандартной библиотеки языка C. Содержит определения констант, объявления функций и типов для операций ввода/вывода.
printf() и scanf() printf() – функция позволяет выводить на экран информацию согласно заданному формату. scanf() – функция позволяющая считывать с клавиатуры информацию согласно заданному формату.
Форматы printf и scanf %d – десятичный вывод (int) %ld – десятичный длинный вывод (long int) %u – десятичный (unsigned int) %o – восьмеричный (octet) %f или %g – дробный %6d – печатать в 6 позиций %.2f – печатать 2 знака после запятой %6.2f – печатать 2 знака после запятой в поле на 6 позиций %s – (строка char[]) вывод любого массива символов до завершающего нуля
Форматы printf и scanf
Escape-последовательности Экранирующие последовательности \n – new line \r – возврат каретки \t – табуляция \b – backspace \" и \' – кавычки \\ – символ \ \a – alarm (звуковой сигнал)
Сложение двух чисел #include int main () { int a, b; printf ("Введите два числа: "); scanf ("%d%d", &a, &b); printf ("%d\n", a + b); return 0; }
Математические функции В описано множество математических функций. Входные и выходные данные типа double.
ctype.h В описаны функции для проверки и изменения символьной информации: isalpha(c); – возвращает не нулевое значение, если аргумент является буквой isdigit(c); – возвращает не нулевое значение, если аргумент является цифрой isspace(c); – возвращает не нулевое значение, если аргумент является пробельным символом (' ', '\t', '\n', '\r' и др.) islower(c); – возвращает не нулевое значение, если аргумент является символом в нижнем регистре isupper(c); – возвращает не нулевое значение, если аргумент является символом в верхнем регистре toupper(c); – переводит символ в верхний регистр tolower(c); – переводит символ в нижний регистр
Ввод символов через getchar() Стандартная библиотека включает несколько функций для чтения и записи одного символа. Простейшие из них getchar и putchar. За одно обращение к getchar считывается следующий символ ввода из текстового потока, и этот символ выдается в качестве результата. Так, после выполнения с = getchar() переменная c содержит очередной символ ввода.
Вывод символов через putchar() Обращение к putchar приводит к печати одного символа. Так, putchar(c) напечатает содержимое целой переменной c в виде символа (обычно на экране). Вызовы putchar и printf могут произвольным образом перемежаться. Вывод будет формироваться в том же порядке, что и обращения к этим функциям.
Константа EOF EOF является индикатором операционной системы, означающим, что данные в источнике закончились. Источниками данных обычно являются файлы и потоки. EOF (аббревиатура от end of file конец файла) целая константа, определенная в. Какое значение имеет эта константа неважно, лишь бы оно отличалось от любого из возможных значений типа char. Для указания терминалу в UNIX и LINUX «EOF» следует воспользоваться комбинацией клавиш Ctrl+D. В Windows Ctrl+Z.
Копирование ввода на вывод 1 #include int main() { int c; c = getchar(); while (c != EOF) { putchar (c); c = getchar(); } return 0; }
Копирование ввода на вывод 2 #include int main() { int c; while ((c = getchar()) != EOF) putchar (c); return 0; }
Подсчёт символов 1 #include int main() { long nc; nc = 0; while (getchar() != EOF) ++nc; printf ("%ld\n", nc); return 0; }
Подсчёт символов 2 #include int main() { double nc; for (nc = 0; getchar() != EOF; ++nc) ; printf ("%.0f\n", nc); return 0; }
Подсчет строк входного потока #include int main() { int с, nl; nl = 0; while ((с = getchar()) != EOF) if (c == '\n') ++nl; printf ("%d\n", nl); return 0; }
Таблица ASCII