Пытаюсь найти способ запрашивать у пользователя целое число или символ одновременно и принимать входные данные для символа или целого числа

#c #input #output

#c #ввод #вывод

Вопрос:

 int main ()
{

    float num1=0,num2=0,total=1,sum,a=0,b=0,c=0,d=0,e=0;  
    scanf("%f",amp;a);
    scanf("%f",amp;b);
    printf("Please enter the first number or variable:n");
        //store in num1
    //I assume some type of function to calculate 
    printf("//whatever the user imputed whether it be the value stored in a or the value stored in num1)
}
 

Это урезанная часть моего кода, но цель здесь
Я пишу на c и пытался выяснить, как определить, ввел ли пользователь переменную или целочисленное значение.

Комментарии:

1. Вам нужно прочитать строку и проанализировать ее.

Ответ №1:

Я не уверен, основываясь на вашем коде, но, исходя из формулировки вашего вопроса, вы хотите получить один символ и определить, является ли это символом или цифрой? Вы можете использовать функции is в ctype.h, чтобы определить, что такое ввод, например:

 int ch = fgetc(stdin);

if(isdigit(ch)) {
    printf("integern");
} else {
    if(isalpha(ch)) {
        printf("charactern");
    } else {
        printf("something elsen");
    }
}