#include<stdio.h>
int calsum(int x,int y,int z);
int main()
{
while(1)
{
int a, b, c, sum;
printf("Enter any3 numbers");
scanf("%d%d%d", &a, &b, &c);
sum = calsum(a, b, c);
printf("sum=%d\n", sum);
}
}
int calsum (int x, int y, int z)
{
int d;
d = x + y + z;
if(d > 2)
return d;
else
d = 1;
return;
}
當我給輸入作爲-1 1 0
我的輸出應爲1
,但它給0
爲什麼呢? 它是所有關於增加三個數字返回碼誤解
如果你的輸入是-1 1 0並且你添加了這3個數字,那就給你0,爲什麼還要有1?你也想糾正返回語句看起來像返回1,而不是d = 1;返回; – Aeonos
您的'return'語句中未定義的行爲。 –
使最後的return語句返回d; – Ankur