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

不明白,求指教。

威猛的小绵羊 发布于 2022-08-26 14:17, 597 次点击
#include <stdio.h>
int main()
{
    int a, b, c;
    b = c = 0;
    printf("输入一个数字:");
    while (scanf_s("%d" , &a) == 1)
    {
        printf("####\n");
    }
    return 0;
}
&a值不管输入什么值,都能打印###,不是输入1时候才能打印吗?
2 回复
#2
rjsp2022-08-26 15:22
scanf_s 返回 1,表示成功接受参数的数量是1

如果你输入 123,那scanf_s("%d",&a)就成功将 a设为123了,所以返回 1
如果你输入 a,返回 0
如果你输入 CTRL+Z(windows) 或 CTRL+D(Linux),返回 EOF
#3
威猛的小绵羊2022-08-26 16:22
回复 2楼 rjsp
谢谢,明白了,就是不看a的值,只看scanf的返回值
1