Моя программа может принимать либо любую длину, либо пустой ввод. Однако, если вход пуст (пробел или новая строка), программа продолжает ждать ввода. Я также пробовал fgets
, но если нажать клавишу пробела/новой строки, он все еще ожидает большего ввода, который не является пробелом/новой линией перед закрытием.
Упрощенный код:
#include <stdio.h>
main(){
int num;
scanf("%i",&num);
printf("%i",num);
}
Input:
363792
Вывод:
363792
Желаемый:
Input:
Вывод:
Я новичок в C, и мне очень трудно выполнить это.
Что пытались использовать fgets:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main(){
int n;
char s[20];
fgets(s,20,stdin);
n=atoi(s);
printf("%i",n);
}
Edit: Оказывается, я не компилировал код правильно. Поэтому каждый раз, когда я пытался вносить изменения, он просто смотрел на исходный код с помощью scanf.