原因也很简单,问题是因为您不管是奇数还是偶数,都会走到printf("+")。
所以显示"+"应该是有真的加值进来时,才显示"+"才对。
所以简单作法是
复制程式
if(i<100 &&(i%2 == 1) )
{
printf("+");
goto start;
}
目前手头没有compiler可以测,所以您可以先玩玩看。
如果不行,那就记得修改的条件是「有加入的值,才显示"+"」但是这个要注意头尾的问题。
个人还是建议不要用goto当回圈使用。
希望对您有帮助~~
我比较偏好的写法如下:
复制程式
int main(void)
{
int i=0,sum=0,;
start:
i+=1;
if(i%2 == 0) {
goto start;
}
sum+=i;
printf("%d",i);
if(i<100 && i != 99)
{
printf("+");
goto start;
}
printf("=%d\n",sum);
system("pause");
return 0;
}