C语言问题,求四个整数的最大值并且从小到大排列,运行结果为什么会是这样?
展开全部
这是你的scanf函数的写法问题导致的:
scanf("%d,%d,%d,%d", &a, &b, &c, &d);
这种写法,注意"%d,%d,%d,%d",每个占位符之间有“,”分割,所以你输入的时候,需要用相同的分割符(这里是“,”)隔开需要输入的数字。
如果你没有按照“,”分割输入,而是用空格或回车分割输入,就会出现读取的数字不正确的问题。
因此,如果没有特殊要求,一般scanf的占位符之间需要加任何符号,紧挨着写就可以:
scanf("%d%d%d%d", &a, &b, &c, &d);
这样用空格或回车分割输入就没问题了。
scanf("%d,%d,%d,%d", &a, &b, &c, &d);
这种写法,注意"%d,%d,%d,%d",每个占位符之间有“,”分割,所以你输入的时候,需要用相同的分割符(这里是“,”)隔开需要输入的数字。
如果你没有按照“,”分割输入,而是用空格或回车分割输入,就会出现读取的数字不正确的问题。
因此,如果没有特殊要求,一般scanf的占位符之间需要加任何符号,紧挨着写就可以:
scanf("%d%d%d%d", &a, &b, &c, &d);
这样用空格或回车分割输入就没问题了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询