Ввод и вывод символа. Как разобраться? - C (СИ)
Формулировка задачи:
Всем добрый день!
Я составил учебный пример кода для работы (ввода и вывода) с переменными трёх типов данных: int, float, char .
Надо предварительно ввести данные с клавиатуры и далее программа должна эти данные выводить на консоль.
С числами всё нормально работает.
А работа с символом не получается. Не могу разобраться. Прошу объяснить, что происходит. Исходный код компилируется, но при исполнении программы символ даже не предлагается для ввода и программа следует далее. Использую форматированный ввод/вывод.
//VisualStuduo C++ 2010 //main.cpp //Use of variable three types: int, float, char //Data input via the keyboard #include <stdio.h> #include <conio.h> int main(int argc, char* argv[]) { int A; float B, Res; char Simb; printf("Use of variable three types: int, float, char\n"); printf("Data input via the keyboard\n"); printf(" \n"); printf("Input integer A: \n"); scanf("%d",&A); printf("Input float B: \n"); scanf("%f",&B); Res = A / B; printf (" Res = %f",Res,";"); printf(" \n"); printf(" \n"); printf("Input char Simbol:"); scanf("%c",&Simb); printf(" \n"); printf (" Simbol = %c",Simb,";"); printf(" \n"); printf(" \n"); printf("For stop program, press the key [Enter]:"); getch(); return (0); }
Решение задачи: «Ввод и вывод символа. Как разобраться?»
textual
Листинг программы
//Use of variable three types: int, float, char //Data input via the keyboard #include <stdio.h> int main() { int a = 0; float b = 0, res = 0; char simb; printf("Use of variable three types: int, float, char\n"); printf("Data input via the keyboard\n"); printf("\nInput integer A:\n"); scanf("%d", &a); printf("Input float B:\n"); scanf("%f", &b); res = a / b; printf ("Res = %.1f;\n", res); getchar (); printf("\nInput char Simbol:\n"); simb = getchar(); printf ("Simbol = %c;", simb); printf("\n"); return (0); }
Объяснение кода листинга программы
- Объявление переменных: int a = 0;
Отображение сообщения:
Use of variable three types: int, float, char
Отображение сообщения:Data input via the keyboard
- Ввод целого числа: scanf(
%d
, &a); - Ввод числа с плавающей точкой: scanf(
%f
, &b); - Вычисление результата: res = a / b;
- Вывод результата: printf (
Res = %.1f;\n
, res); - Получение символа: simb = getchar();
- Вывод символа: printf (
Simbol = %c;
, simb); - Вывод символа новой строки: printf(
\n
); - Возврат 0, чтобы указать, что программа успешно завершилась.
- Ключевое слово main() используется для определения точки входа в программу.
- Функция scanf() используется для ввода данных с клавиатуры.
- Функция printf() используется для вывода данных на экран.
- Функция getchar() используется для получения следующего символа из потока ввода.
- Знак
%d
в функции scanf() указывает, что вводимое значение должно быть целым числом. - Знак
%f
в функции scanf() указывает, что вводимое значение должно быть числом с плавающей точкой. - Знак
%c
в функции printf() указывает, что выводимое значение должно быть одним символом. - Знак
&
используется для передачи адреса переменной в функцию scanf(). - Знак
.
используется для получения значения плавающей точки. - Знак
\n
используется для перехода на новую строку. - Знак
0
используется для указания успешного завершения программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д