注册 登录
编程论坛 C语言论坛

为什么两个scanf不能同时用执行一个scanf以后直接结束程序不触发下面一个scanf

luolitunvlan 发布于 2021-05-17 22:20, 1565 次点击
程序代码:
#include <stdio.h>

void test()
{
    int m;
    int d;
    scanf("%d",&m);
    scanf("%d",&d);
}

int main() {
    test();
    return 0;
}
3 回复
#2
我善治鬼2021-05-17 22:37
void test()
{
    int m;
    int d;
    scanf("%d",&m);
    scanf("%d",&d);    // 你直接删掉一行不就只执行执行一个scanf吗
}
#3
apull2021-05-18 11:36
第二个读取的是第一个里输入的回车符
#4
mindfulness2021-05-20 02:05
你需要清空下stdout
程序代码:
void test()
{
    int m;
    int d;
    scanf("%d",&m);
    fflush(stdout);
    scanf("%d",&d);
}
1