
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
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);
}
vb200S是浮点数的首地址,有15个数求其中的最大值存在vd500Network 1 // 网络标题// 网络注释LD SM00MOVD &VB200, AC1Network 2 LD SM00CALL SBR0, 15, VD500子程序SBR0Network 1 // 网络标题// 网络注释LD SM00+D 4, AC1MOVR AC1, LD2Network 2 LD SM00FOR LW6, 1, LW0Network 3 LD SM00+D 2, AC1Network 4 LD SM00AR> AC1, LD2MOVR AC1, LD2Network 5 NEXT 3回答者:
(1)求绝对值就是让将负数转成正数,正数还是其本身,以下是代码:
#include<stdioh>int Abs(int a)
{
if(a<0)
return -a;
return a;
}
void main()
{
int a;
printf("请输入一个数:");
scanf("%d",&a);
printf("%d的绝对值是:%d\n",a,Abs(a));
}
(2)以下是输出截图:
以上就是关于C语言求绝对值全部的内容,包括:C语言求绝对值、PLC中求绝对值的程序怎么写、c语言要求求一个数的绝对值!!!过程!!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)