Разделы презентаций


Язык программирования Си. Строковые литералы, ввод-вывод, ветвления

Содержание

Строковые литералыУказываются в кавычках:"Test #2"; "Press any key...".Пустая строка: "".В тексте литерала единичные кавычки недопустимы, а двойные игнорируются:"2º19'59" в. д." — недопустимо;"Роман ""Тихий Дон""" → Роман Тихий Дон.Кавычки нужно экранировать служебным символом «\»:"Роман \"Тихий

Слайды и текст этой презентации

Слайд 1

Язык программирования Си
Строковые литералы, ввод-вывод
Ветвления

Югов Иван Олегович
МОУ Гимназия №10, г.

Тверь

Язык программирования СиСтроковые литералы, ввод-выводВетвленияЮгов Иван ОлеговичМОУ Гимназия №10, г. Тверь

Слайд 2Строковые литералы

Указываются в кавычках:
"Test #2"; "Press any key...".
Пустая строка: "".
В

тексте литерала единичные кавычки недопустимы, а двойные игнорируются:
"2º19'59" в. д." — недопустимо;
"Роман

""Тихий Дон""" → Роман Тихий Дон.
Кавычки нужно экранировать служебным символом «\»:
"Роман \"Тихий Дон\"" → Роман "Тихий Дон".
Строковые литералыУказываются в кавычках:

Слайд 3Строковые литералы
Экранирование — оформление служебных символов так, что они получают буквальное

значение.
Символ «\» экранируется самим собой:
"C:\\bootlog.txt" → C:\bootlog.txt.
Символ «\» также экранирует

конец строки:
"Программирование \
на языке Си"
обозначает строку
Программирование на языке Си.

Строковые литералыЭкранирование — оформление служебных символов так, что они получают буквальное значение.Символ «\» экранируется самим собой:

Слайд 4Строковые литералы
Escape-последовательность (управляющая последовательность, УП) — последовательность символов, имеющая особое значение.
Используется для вставки

служебных символов.
Начинаются с «\»: \", \\, \'.
Даёт возможность указывать символы

по их восьмеричным (oct) и шестнадцатеричным (hex) кодам:
\000, где 000 — трёхзначный oct-код символа;
\x0, где 0 — hex-код символа (возможно несколько цифр).
"\065" → 5; "\x35" → 5; "\x74\145\x73\x74" → test.
В коде символов можно указывать меньше цифр, но нежелательно.
Строковые литералыEscape-последовательность (управляющая последовательность, УП) — последовательность символов, имеющая особое значение.Используется для вставки служебных символов.Начинаются с «\»: \

Слайд 5Строковые литералы
Примеры:
После символа \7 можно написать цифру 4: "\0074".
При записи "\74" получится

символ с кодом 64: >.
Hex-запись не органичивается каким-то количеством цифр:
"\x445" — предупреждение о переполнении строковой

константы. Результат не определён.

Слайд 6Строковые литералы
Как записать символ 5 сразу после символа \x44?
"\x44""5"

Строковые литералыКак записать символ 5 сразу после символа \x44?

Слайд 7Строковые литералы
Стандартом также определены:

Строковые литералыСтандартом также определены:

Слайд 8Строковые литералы
Примеры результата на экране:
"Information\b\bcs" → Informatics;
"A\tB\tC" → A B

C.
Использование символа \n в литерале
"Л. Н. Толстой\n\"Война и мир\""
даёт

на экране переход на следующую строку:
Л. Н. Толстой
"Война и мир".
Перед прочими символами «\» игнорируется:
\h → h, \N → N.
Строковые литералыПримеры результата на экране:

Слайд 9Строковые литералы
Каждый символ занимает в памяти 1 байт.
Любая строковая константа заканчивается

символом с кодом 0 («нуль-терминатором»).
Все функции работы со строками это знают, поэтому не обрабатывают

символы после первого же «нуль-терминатора» в строке.
Явно указывать «нуль-терминатор» не нужно.
Строковые литералыКаждый символ занимает в памяти 1 байт.Любая строковая константа заканчивается символом с кодом 0 («нуль-терминатором»).Все функции работы со строками это

Слайд 10Строковые литералы
Символьная константа — в апострофах:
'A'; '$'; '\''; '\077'; '\n'.

Занимает 1 байт:
не может

быть пустым;
«нуль-терминатором» не заканчивается.

Может храниться в переменной типа char:
char P =

'A';
Строковые литералыСимвольная константа — в апострофах:'A'; '$'; '\''; '\077'; '\n'.Занимает 1 байт:не может быть пустым;«нуль-терминатором» не заканчивается.Может храниться в переменной типа

Слайд 11Строковые литералы
Возможна поддержка «широких» (wide) символов и строк — по 2 или 4 байта на символ.
«Широкие» литералы —

с префиксом L:
L'Ы'
L"Lorem ipsum dolor sit amet..."
«Широкий» символ может храниться в переменной int

(short, long):
short P = 'Ф';
Строковые литералыВозможна поддержка «широких» (wide) символов и строк — по 2 или 4 байта на символ.«Широкие» литералы — с префиксом L:L'Ы'L

Слайд 12Ввод-вывод
Используется заголовочный файл stdio.h.
Для его использования пишем в начале кода:
#include


Основные операции:
ввод: scanf, fscanf, wscanf и т. п.;
вывод: printf, fprintf, wprintf и т. п.

Ввод-выводИспользуется заголовочный файл stdio.h.Для его использования пишем в начале кода:#include Основные операции:ввод: scanf, fscanf, wscanf и т. п.;вывод: printf,

Слайд 13Вывод (printf)
Функция printf выводит на стандартный поток вывода строковое выражение.

Возвращает количество выведенных символов.
printf("Hello world!\n");
Полный формат вызова printf:
printf(Форматная строка, параметры);
Форматная

строка — особая строковая константа, задающая формат вывода остальных параметров.
Вывод (printf)Функция printf выводит на стандартный поток вывода строковое выражение. Возвращает количество выведенных символов.printf(

Слайд 14Вывод (printf)
Пример вывода с форматной строкой:
printf("Время: %d часов %d минут", H,

M);
В форматной строке символ «%» является служебным. Экранируется сам собой:
printf("Загрузка

завершена на 100%%");

Со знака «%» начинаются УП, задающие формат вывода для каждого из остальных параметров:
%ФлагиШиринаТочностьДлинаТип
Вывод (printf)Пример вывода с форматной строкой:printf(

Слайд 15Вывод (printf)
В форматных УП обязателен только Тип:

Вывод (printf)В форматных УП обязателен только Тип:

Слайд 16Вывод (printf)
Флаги определяют параметры вывода:








Пример: printf("Value %+i at %#X", Val,

Cell);
Флаги можно комбинировать: printf("%#+X", U);

Вывод (printf)Флаги определяют параметры вывода:Пример: printf(

Слайд 17Вывод (printf)
Ширина — число: какой минимум знаков отвести под значение:
printf("%6i", Value);
Либо

символ «*» — количество знаков указано в дополнительном параметре перед основным:
printf("%*i", Length,

Value);
Если число короче, то остаток заполняется пробелами (или нулями, если есть флаг 0):
printf("[%12i]", 125); → [ 125]
Если число длиннее, то оно выводится целиком:
printf("[%3i]", 142857); → [142857]
Вывод (printf)Ширина — число: какой минимум знаков отвести под значение:printf(

Слайд 18Вывод (printf)
Точность — точка и следующее за ним число:
для целых (%i,

%d, %u, %o, %x, %X) — минимум знаков под значение, остаток

заполняется нулями; точность 0 означает вывод пустой строки для нулевого значения;
для %f, %e, %E — число десятичных знаков;
для %g, %G — максимальное число значащих цифр;
для %s — только указанное количество первых символов.
Точность по умолчанию — .1. Символы «.*» означают задание точности отдельным параметром.
Примеры:
printf("[%3.2d] [%.2f]", 3, 5.376); → [ 03] [5.38]
printf("[%.0d] [%.*f]", 0, 1, 2.39); → [] [2.4]
Вывод (printf)Точность — точка и следующее за ним число:для целых (%i, %d, %u, %o, %x, %X) — минимум знаков

Слайд 19Вывод (printf)
Длина — уточняет длину типов:
h — для целых (%i, %d, %u,

%o, %x, %X), тип «короткий» (short);
l — для целых (%i, %d,

%u, %o, %x, %X), тип «длинный» (long);
ll — для целых (%i, %d, %u, %o, %x, %X), тип «очень длинный» (long long);
L — для вещественных (%f, %e, %E, %g, %G), тип «длинный» (long double).
Вывод (printf)Длина — уточняет длину типов:h — для целых (%i, %d, %u, %o, %x, %X), тип «короткий» (short);l — для

Слайд 20Вывод (printf)
Пример:
char A = -1; unsigned char B = 1;
short

C = -2; unsigned short D = 2;
long E =

-3; unsigned long F = 3;
long long G = -4; unsigned long long H = 4;
double I = 5.0; long double J = 6.0;
char K = 'a';
printf("%d %u %hd %hu %li %lu %lli %llu %f %Lf \
%c %s", A, B, C, D, E, F, G, H, I, J, K, "!!!");
Вывод на экран:
-1 1 -2 2 -3 3 -4 4 5.000000 6.000000 a !!!
Вывод (printf)Пример:char A = -1; unsigned char B = 1;short C = -2; unsigned short D =

Слайд 21Вывод (printf)
Пример:
printf("%+07.*lF\n", 2, 3.14159265359);
printf("%.4s\n", "Computer");
printf("%c%c%c\n", 65, 66, 67);
printf("%f %f\n", 0.0

/ 0.0, 5.0 / 0.0);
Вывод на экран:
+003.14
Comp
ABC
-nan inf

Вывод (printf)Пример:printf(

Слайд 22Ввод (scanf)
Полный формат вызова scanf:
scanf(Форматная строка, параметры);
Возвращает количество успешно считанных

величин.
Форматная строка — как у printf.
В УП указывается тип. Можно указать

ширину (максимальное количество знаков для считывания) и длину значения.
Остальные параметры — соответствующее количество адресов (переменных), в которые будут считаны данные.
Ввод (scanf)Полный формат вызова scanf:scanf(Форматная строка, параметры);Возвращает количество успешно считанных величин.Форматная строка — как у printf.В УП указывается

Слайд 23Ввод (scanf)
Унарная операция & — взятие адреса.
Получает адрес, начиная с которого, в

памяти хранится переменная: &A, &Result.
scanf("%Lf %Lf %Lf", &x, &y, &z);
Форматная

строка может содержать другие символы кроме УП. Тогда необходимо водить и их:
scanf("R%i", &N);
(ожидается ввод, например, R12, R-46…)
Исключение — пробелы, переводы строк, табуляции.
Ввод (scanf)Унарная операция & — взятие адреса.Получает адрес, начиная с которого, в памяти хранится переменная: &A, &Result.scanf(

Слайд 24Ветвления
Синтаксис ветвления:
if(условие)
команда1;
else
команда2;
Вычисляет значение условия.
Если условие истинно (ненулевое), тогда выполняется команда 1,

иначе — команда 2.

ВетвленияСинтаксис ветвления:if(условие)	команда1;else	команда2;Вычисляет значение условия.Если условие истинно (ненулевое), тогда выполняется команда 1, иначе — команда 2.

Слайд 25Ветвления
Раздел else может отсутствовать.
Можно указать несколько команд — в {}:
if(условие)
{
командаA1; командаA2; командаA3;...
}
else
{

командаB1; командаB2; командаB3;...}
Точка с запятой после команды обязательна, после операторных скобок — нет.

ВетвленияРаздел else может отсутствовать.Можно указать несколько команд — в {}:if(условие){	командаA1; командаA2; командаA3;...}else{ командаB1; командаB2; командаB3;...}Точка с запятой после команды обязательна, после операторных

Слайд 26Ветвления
Пример:
if(A == B || B == C || A ==

C)
if(A == B && B == C)
printf("Треугольник равносторонний\n");
else
printf("Треугольник равнобедренный\n");
else
printf("Треугольник

общего вида\n");

ВетвленияПример:if(A == B || B == C || A == C)	if(A == B && B == C)

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика