原因是:scanf()的第一个参数提供的是后面变量获取数据的格式,按照scanf的执行顺序,自左到右,所以设定格式时,若内部有\n需要换行进行读取,此时读取是:首先输入数据,回车;scanf按格式进行读,然后格式要求换行到下一行读取,scanf需要继续到下一行扫描数据,所以必须要输入一行数据(按照"%d,%d,%d"模式进行),否则不能结束。
此外,你可以输入两次不一样的结果,看看scanf到底是接收那一行的数值哦。。。
scanf("%d,%d,%d\n",&a,&b,&c)你太粗心了,/n与\n不一样\n是转义符,换行用的
把scanf里的\n去掉