繁体   English   中英

scanf()不接受多个输入

[英]scanf() not taking multiple inputs

嗨,我刚刚开始在我的Debian系统上的gcc编译器中学习C编程。 这是代码

main()
{
    fflush( stdin );
    int a,b;
    scanf("%d,%d",&a,&b);
    printf("%d,%d",a,b);
}

scanf不接受第二个变量的输入。 我按2,然后按回车键,它显示

root@debian:/home/wis# ./test
2
2,0root@debian:/home/wis#

我也用过空格和Tab键。 请帮我。

您将scanf字符串定义为"%d,%d" ,因此程序期望输入为1,2

如果只提供一位数字,然后按Enter键,它将解析第一位数字,而第二位数字保持不变。 它在声明时分配为0 ,因此这就是您在打印时看到的内容。

您的printf语句将从末尾的"\\n"中受益,并且您的代码段需要缩进。 下次请显示您的包含文件( #include <stdio.h> ),它使我们可以更轻松地编译和运行代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM