搞不清楚你的问题是什么意思,只能给你简单的分析一下了
scanf函数有输入的功能,这是废话了,一般来讲我们输入数据都有多个,很少会出现仅输入一个的情况(多行输入的情况除外)。既然我们要输入多个,就必须要用某些符号将它们分隔开(如:空格是最常见的,还有就是逗号)。
如果没有分隔开,scanf("%d%d",&a,&b);像这样,那我们就算输入再长的数据,也只会给第一个变量,为什么?因为没有分隔开程序不知道第一个数据到什么地方结束,当然就一直给第一个数据赋值了。当有了分隔符,如:scanf("%d %d",&a,&b);,那我们只要在第一个数据后面加一个空格,程序就知道了我们要给第二个变量赋值了。自然两个变量都有自己的值了
再补充一下,遇到空格tab回车时数据结束仅仅是在给数组赋值中。如果这几个符号出现在了函数调用中,这就与数组赋值没多大关系了
没有变化,在运行输入值的时候也跟其符号就可以了,换其它符号也要符合C语言无法规则。
你的输入的格式要跟键盘输入格式对应吧,就是改为scanf("%d %d",&a,&b);
你试试scanf_s