Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
0 / 0 / 0
Регистрация: 03.03.2014
Сообщений: 8
1

Если введена не цифра, то написать, что нужно вводить только цифры и перейти снова к вводу

21.03.2014, 19:55. Показов 2577. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Я новичок в этом деле. Как реализовать функцию: если введена не цифра, то написать, что нужно вводить только цифры и перейти снова к вводу.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
 
int main()
{
    char i, counter;
    printf("How much do I say \"Hello\" ???\n");
    scanf("%c", &counter);
    for(i='0'; i<counter; ++i)   //повторения цыкла, в зависимости от введенной цифры с клавиатуры;
    {
       printf("Hello\n");
    }
    getch();
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2014, 19:55
Ответы с готовыми решениями:

Если введена не цифра
Есть переменная. Проверить введенное значение. Если это цифра, продолжить работу, нет выдать ошибку.

Нужно чтобы, в Memo можна было вводить только цифры и Enter
У меня есть Memo, с которого будет считоватся массив из чисел, 1 строка = 1 элемент(int). Я сделал...

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

Проверить введенное значение и, если это не цифра, вернуться ко вводу
Программа должна проверить введенное значение и, если это не цифра, вернуться ко вводу, но она...

8
Заблокирован
21.03.2014, 21:51 2
Цифра или число?
И если число, то int или double?
0
6 / 6 / 1
Регистрация: 27.11.2012
Сообщений: 160
21.03.2014, 22:23 3
C
1
2
if (counter < 48 || counter > 58) then
      printf("Введите число");
если нужно ожидать ввода, то через while() {}
НО! дело в том, что если Вы введёте знак "+" или число "43", то в переменную counter всё равно будет занесено 43, Вы же считывает символ scanf("%c");
можно сделать так
C
1
2
while (scanf("%i",&counter) == -1) 
     printf("Error! Enter the number:\n");
попробуйте, должно сработать )

Добавлено через 12 минут
увы, "не катит" . и да, scanf возвращает 0 в случае ошибки
0
0 / 0 / 0
Регистрация: 03.03.2014
Сообщений: 8
21.03.2014, 23:53  [ТС] 4
Цитата Сообщение от IrineK Посмотреть сообщение
Цифра или число?
И если число, то int или double?
Я еще не знаю, мне нужно, чтобы отклик программы был только на цифры получается. Если тип переменных int, то, к примеру, ввожу a - программа букву видит, как двухзначное число. Нужно: если введена цифра с клавиатуры, то программа делает инструкцию. В противном случае, нужно распознать, что введена не цифра, вывести сообщение и вернутся к началу.
0
Заблокирован
21.03.2014, 23:55 5
Еще раз подумайте, не про ошибку ввода, на которую будете реагировать, а про цель ввода - это цифра или все же число?
0
0 / 0 / 0
Регистрация: 03.03.2014
Сообщений: 8
21.03.2014, 23:58  [ТС] 6
Цитата Сообщение от IrineK Посмотреть сообщение
цель ввода
число из цифр
0
Заблокирован
22.03.2014, 00:01 7
Число типа double состоит не только из цифр, но также содержит разделитель (точка или запятую, в зависимости от локали).

Итак, какого типа ваше число?
0
0 / 0 / 0
Регистрация: 03.03.2014
Сообщений: 8
22.03.2014, 00:05  [ТС] 8
Цитата Сообщение от IrineK Посмотреть сообщение
Итак, какого типа ваше число?
int
0
Заблокирован
22.03.2014, 00:23 9
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
 
 
int main() 
{   int num, status = 0;
 
    do
    {   status = scanf("%d", &num);
        if (status != 1)
            printf("An integer expected\n");
        fflush (stdin);
    }   while (status != 1);
 
    printf("Your integer: %d", num);
 
    getchar();
    return 0;
}
Добавлено через 6 минут
double фильтруется аналогично.
1
22.03.2014, 00:23
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.03.2014, 00:23
Помогаю со студенческими работами здесь

Как организовать проверку введённого числа, если введена буква то выдает ошибку и просит ввести число снова
cout &lt;&lt; &quot;Введите номер магазина: &quot;; while (!(cin &gt;&gt; a.Number) || a.Number &lt;= 0 || a.Number &gt;=...

Что нужно сделать, чтобы меню закрывалось, если пользователь захочет перейти к контенту?
$('.burger_menu').on('click', function(){ $( '.header_menu' ).toggleClass('active', true);...

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

Нужно чтобы в поля: "Год издания" и "Количество" можно было вводить только цифры
Помогите пожалуйста. Нужно чтобы в поля: &quot;Год издания&quot; и &quot;Количество&quot; можно было вводить только...

Написать программу, которая будет вводить с клавиатуры положительные числа до тех пор, пока не будет введена -1.
Всем привет! Прошу помочь выполнить эти 2 задания в Python: 1) Билеты на общественный...

как сделать что бы в textBox можно было вводить только цифры, "," и "-"
как сделать что бы в textBox можно было вводить только цифры, &quot;,&quot; и &quot;-&quot;


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru