C中的EOF,它没有看到第一个字符输入[关闭]

问题描述 投票:-1回答:1

我想接受用户的输入并检查他们(素数)。例如,当运行程序时,它不读取第一个字符:当我写27时,程序读取的内容类似于7。但是只有第一个输入。

int main(){
    int x;

    stack *main_stack = tanim();
    stack *helper_stack = tanim();  

    while (x=getchar() != EOF){
        printf("Give number= \n");
        scanf("%d",&x);

        if(prime(x)==1)
            push(x,main_stack);
        printf("Now, Stack is updated =   \n");
        bastir(main_stack); 
    }
}

c eof
1个回答
0
投票
int main(){
    int x;

    stack *main_stack = tanim();
    stack *helper_stack = tanim();  

    while (x=getchar() != EOF){
        printf("Give number= \n");
        scanf("%d",&x);

        if(prime(x)==1)
            push(x,main_stack);
        printf("Now, Stack is updated =   \n");
        bastir(main_stack); 
    }
}

这里是代码。

© www.soinside.com 2019 - 2024. All rights reserved.