c语言求绝对值作业,C语言求绝对值

  • Post author:
  • Post category:其他


C语言求绝对值

來源:互聯網  2009-09-07 05:39:15  評論

分類: 電腦/網絡 >> 程序設計 >> 其他編程語言

問題描述:

求一个数的绝对值.

main()

{

main()

{int x,y;

scanf(“%d”,&x);

if (x<0) y=-x;

printf (“%d\n”,y);

if (x>0) 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<0) y=-x;

printf (“%d\n”,y);

}

[b]分类:[/b] 电脑/网络 >> 程序设计 >> 其他编程语言[br][b]问题描述:[/b][br]求一个数的绝对值.

main()

{

main()

{int x,y;

scanf(“%d”,&x);

if (x<0) y=-x;

printf (“%d\n”,y);

if (x>0) y=x;

printf (“%d\n”,y);

}

假如,输入-10.结果为:10,10

输入10,结果就为:4211576,10

我就是想求得一个数的绝对值,为什么每次都得到两个结果.实在想不通.[br][b]参考答案:[/b][br]有两个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<0) y=-x;

printf (“%d\n”,y);

}