使用了未初始化的局部变量“y”
#include <stdio.h>
int fun(int x)
{
int y;
if(x>=0)
y=x;
else
y=-x;
return y;
}
void main()
{
int x,y,i=3;
while(i--)
{
printf("请输入一个整数:\n");
scanf("%d",&x);
fun(x);
printf("|%d|=%d\n",x,y);
}
}
#include <stdio.h>
int fun(int x)
{
int y=0;
if (x >= 0)
y = x;
else
y = -x;
return y;
}
void main()
{
int x, y=0, i = 3;
while (i--)
{
printf("请输入一个整数:\n");
scanf("%d", &x);
y=fun(x);
printf("|%d|=%d\n", x, y);
}
}
形参的值不影响实参
#include <stdio.h>
int fun(int x)
{int y;
if(x>=0)
y=x;
else
y=-x;
return y;}
void main()
{int x,y,i=3;
while(i--)
{printf("请输入一个整数: \n");
scanf("%d" ,&x);
y=fun(x);
printf("|%d|=%d\n" ,x,y);}
}
主函数里: fun(x); 应修改为:y=fun(x);