scanf这里没啥毛病,你s = s+s这里是不是想写s = s+ x;啊,而且问题是,如果你的x如果不是10的倍数,就是个死循环。x = x%10,比如x= 23,x=x%10以后,x=3;下一次进入for循环后,执行x= x%10,3除以10取余数还是3,这样for循环就是死循环了。我感觉你可能要的是这样的代码:
for(i = 0; x > 0; i++)
{
s = s + (x%10); //取余数
x = x/10;
}
//这样最后s的值是x中所有数字的和
scanf没啥问题啊,写的没毛病
循环里写了s=s+s;这肯定写错了吧。是s=s+x吧
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632