关于C++入门的编程问题

C++该怎么编写 scanf有两个变量 如果只给一个变量赋值 输出一种结果 如果两个变量都赋值 又输出一种结果?

一个方法是接收一行字符串输入,然后通过搜索空格来判断是否输入了两个值
或者这样:

int main()
{
 
    int a,b;
    int k = scanf("%d%d",&a,&b);
    if(k == 1)
    {
        printf("输入了一个变量");
    }

    return 0;
 
}

输入的时候,先输入一个整数,回车,然后再输入CTRL+Z,就表示只输入一个整数

可以通过
if (scanf(...) == 2)
判断是否2个值