Ввод и вывод символа. Как разобраться? - 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);
}

Объяснение кода листинга программы

  1. Объявление переменных: int a = 0; Отображение сообщения: Use of variable three types: int, float, char Отображение сообщения: Data input via the keyboard
  2. Ввод целого числа: scanf(%d, &a);
  3. Ввод числа с плавающей точкой: scanf(%f, &b);
  4. Вычисление результата: res = a / b;
  5. Вывод результата: printf (Res = %.1f;\n, res);
  6. Получение символа: simb = getchar();
  7. Вывод символа: printf (Simbol = %c;, simb);
  8. Вывод символа новой строки: printf(\n);
  9. Возврат 0, чтобы указать, что программа успешно завершилась.
  10. Ключевое слово main() используется для определения точки входа в программу.
  11. Функция scanf() используется для ввода данных с клавиатуры.
  12. Функция printf() используется для вывода данных на экран.
  13. Функция getchar() используется для получения следующего символа из потока ввода.
  14. Знак %d в функции scanf() указывает, что вводимое значение должно быть целым числом.
  15. Знак %f в функции scanf() указывает, что вводимое значение должно быть числом с плавающей точкой.
  16. Знак %c в функции printf() указывает, что выводимое значение должно быть одним символом.
  17. Знак & используется для передачи адреса переменной в функцию scanf().
  18. Знак . используется для получения значения плавающей точки.
  19. Знак \n используется для перехода на новую строку.
  20. Знак 0 используется для указания успешного завершения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы