关于c语言溢出的问题

2024年11月20日 16:26
有1个网友回答
网友(1):

问题:
1.
变量没有初始化;
2.
if
(x
+
y
+
z
+
k
==
1)
//
永远不成立,散告所以陷入了死循环;
解决办法:
1.
初始化每个变量;
2.
循环改成:
for
(i=1;
i<=99;
++i)
;
其它3个类似改一下;
然后把判断条件改为:if
(x
+
y
+
z
+
k
==
100
)
最后赋值的时候:
X
=
x
/
100;
Y
=
y
/
100;
Z
=
z
/
100;
K
=
k
/
100;
这样就可以得到结果了!
优化建议:
最里面一层循环完全没必要:因为前3个变量确定之后,最后一个变量的值也就悔激唯一确碧掘袜定了!
k
=
1-x-y-z;