Повторный запрос ввода при ошибке - C (СИ)

Узнай цену своей работы

Формулировка задачи:

При вводе не верного числа все норм, при вводе символа - выводится "Вы ошиблись." и не запрашивается второй раз ввод.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include <clocale>
#include <windows.h>
 
int main()
{
  setlocale(LC_ALL, "Rus");
  bool exit = false;
  short int c=0, vibor=1;
 
menu:
  system("cls");
  printf ("0 - Добавить строку в таблицу\n");
  printf ("1 - Узнать1\n");
  printf ("2 - Узнать2\n");
  printf ("3 - Выход\n");
  printf ("Сделайте выбор:");
  vibor = scanf_s("%d",&c);
 
  if(vibor != 1 || (c<0 || c>3))
  {
      printf ("Вы ошиблись.");
      Sleep (1000);
      goto menu;
  }

Решение задачи: «Повторный запрос ввода при ошибке»

textual
Листинг программы
scanf("%*[^\n]");

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

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