Запретить ввод букв в программу - C (СИ)

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

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

Помогите срочно нада !!
#include <stdio.h>
#include <math.h>
int main()
{
 
 float a,b;
 printf("a="); scanf("%f",&a);
 printf("b="); scanf("%f",&b);
 float z=a+b;
 printf("Z=%.5f\n",z);
return 0;
 
}

Как сделать коректность ввода?

тоесть? чтобы

буквеные вырожения вводить было нельзя

тоесть от (а-я) и от (a -z) или

чтоб какоето окошка выскакивало типа нельзя ввести такие данные

Решение задачи: «Запретить ввод букв в программу»

textual
Листинг программы
#include <stdio.h>
 
int main(void) {
    float f;
    
    while ( printf("Number: ") && scanf("%f", &f) != 1 ) {
        char c;
        while ( scanf("%c", &c) == 1 && c != '\n' )
            ;
        printf("Wrong input!\n");
    }
    
    printf("New value for Pi constant is %f\n", f);
    
    return 0;
}

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

В этом коде на языке C:

  1. Объявлена переменная типа float f для хранения числа.
  2. Используется цикл while для проверки ввода числа.
  3. Внутри цикла, после вывода сообщения Number:, происходит попытка прочитать число с помощью функции scanf в переменную f.
  4. Если число введено некорректно, то с помощью функции scanf считывается символ до тех пор, пока не будет введен корректный символ.
  5. Если число введено корректно, то программа продолжает работу.
  6. После окончания цикла выводится сообщение New value for Pi constant is ... с новым значением числа Пи.
  7. Возвращается 0, чтобы указать, что программа успешно завершилась. Список переменных:
  8. f — переменная типа float для хранения числа.
  9. c — переменная типа char для хранения считанного символа. Выводы:
  10. В цикле while происходит проверка ввода числа.
  11. Если число введено некорректно, то считывается символ до тех пор, пока не будет введен корректный символ.
  12. Если число введено корректно, то программа продолжает работу.
  13. После окончания цикла выводится сообщение New value for Pi constant is ... с новым значением числа Пи.

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


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

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

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