C语言求绝对值求一个数的绝对值.main(){main(){int x,y;scanf("%d",&x);if (x0) y=x;printf ("%d\n",y);}假如,输入-10.结果为:10,10输入10,结果就为:4211576,10我就是想求得一个数的绝对值,为什么每次都得到两个结

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/05 14:49:09

C语言求绝对值求一个数的绝对值.main(){main(){int x,y;scanf("%d",&x);if (x0) y=x;printf ("%d\n",y);}假如,输入-10.结果为:10,10输入10,结果就为:4211576,10我就是想求得一个数的绝对值,为什么每次都得到两个结
C语言求绝对值
求一个数的绝对值.
main()
{
main()
{int x,y;
scanf("%d",&x);
if (x0) y=x;
printf ("%d\n",y);
}
假如,输入-10.结果为:10,10
输入10,结果就为:4211576,10
我就是想求得一个数的绝对值,为什么每次都得到两个结果.实在想不通.

C语言求绝对值求一个数的绝对值.main(){main(){int x,y;scanf("%d",&x);if (x0) y=x;printf ("%d\n",y);}假如,输入-10.结果为:10,10输入10,结果就为:4211576,10我就是想求得一个数的绝对值,为什么每次都得到两个结
有两个printf 就会输出两次,
你输入-10,执行了y=-x; printf ("%d\n",y); printf ("%d\n",y); 三条语句,就是y=10和打印2次y.
你输入10,执行了printf ("%d\n",y); y=10;printf ("%d\n",y); 三条语句,第一个printf的y没有赋值,所以从内存直接读取值4211576.
如果不用ABS函数,可以这样写
main()
{int x,y;
scanf("%d",&x);
y=x;
if (x