HDU2003

来源:互联网 发布:淘宝网农村怎么加盟 编辑:程序博客网 时间:2024/06/16 21:44
HDU2003


求绝对值


Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 133707    Accepted Submission(s): 65592




Problem Description
求实数的绝对值。
 


Input
输入数据有多组,每组占一行,每行包含一个实数。
 


Output
对于每组输入数据,输出它的绝对值,要求每组数据输出一行,结果保留两位小数。
 


Sample Input
123
-234.00
 


Sample Output
123.00
234.00
 


Author
lcy
 


Source
C语言程序设计练习(一)


试题分析:
这道题是一个很简单的求绝对值的题目,虽然简单但是很容易出错,一定要注意精度问题,变量不能使float型,否则系统会报错,应把变量定义为double型。本题可以使用两种方法解决问题,一种是自己求解绝对值,另一种是调用库函数fabs()(abs()函数的参数必须为整数,且返回值为整数;fabs()函数的参数可以是浮点型也可以是整型),两种方法都可以很好的解决这个问题。


代码如下:


代码一:


#include<stdio.h>
int main()
{
double n;
while(scanf("%lf",&n)!=EOF)
{
if(n<0) n=-n;
printf("%.2lf\n",n);
}
return 0;
}


代码二:


#include<stdio.h>  
#include<math.h>  
int main()  
{  
    double n;  
    while(scanf("%lf",&n)!=EOF)  
        printf("%.2lf\n",fabs(n));
    return 0;  
}