关于#printf#的问题,如何解决?

img

img


为什么输入-13后不是显示ERROR而是ERROR1,如何更改才能变为ERROR

else后面加括号,把后面的输出扩起来。不加括号,它里面只能算一个方法体,后面的printf不属于else,所以这个1也跟在ERROR后输出了。

if ( n <=0)
 printf (" ERROR ");
else {
   for ( i =1; i<= n ; i ++){
         p *= i ;
    }
    printf ("%d ", p);
}

有帮助的话采纳一下哦!