int fun(int n)
{
int s=1;
for (int i=2;i<=n;i++) #for(初始化,判断条件,循环语句后的操作);
s*=i;
return s;
}
如果n≤1,都会return s=1;如果n>1,会return不同的s的值。
bool fun(int n, int &s)
{
s=1;
if (n<1) return false; #加了这一句
for (int i=2;i<=n;i++)
s*=i;
return true;
}
如果n<1,会return false;如果n≥1,会return true。
两个代码相比较而言第二个健壮性更好,即容错率更高,同时返回的值的意思也更利于理解。
如果我写的有任何问题欢迎大家多多指正!!C语言小白一枚,多多指教!