在DEVC中运行结果不符合预期,无法找出错误

> #include<stdio.h>
int main()
{
    int ID,password;
    printf("Please enter your ID and password\n");
    scanf("%d%d",&ID,&password);
    while (ID!=123&&password!=321)
    {
        printf("Please enter your ID and password again/n");
        scanf("%d %d",&ID,&password);
    }
    printf("Why");
    

img

不知为什么
第一个数字输入123 就会跳出循环
而while后面的条件设置的却并非如此

求解答