HDU2003 求绝对值入门
Posted 海岛Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU2003 求绝对值入门相关的知识,希望对你有一定的参考价值。
求绝对值
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 246898 Accepted Submission(s): 119380
Problem Description
求实数的绝对值。
Input
输入数据有多组,每组占一行,每行包含一个实数。
Output
对于每组输入数据,输出它的绝对值,要求每组数据输出一行,结果保留两位小数。
Sample Input
123
-234.00
Sample Output
123.00
234.00
Author
lcy
Source
C语言程序设计练习(一)
问题链接:HDU2003 求绝对值
问题简述:(略)
问题分析:
按Markdown格式重写了题解,旧版题解参见参考链接。
需要注意输入数据是多组的,需要进行循环控制处理到EOF(End of File,文件结束)为止。
一般而言,OJ的题涉及浮点数时,按double类型输入,存储变量也采用double类型,输出时用float类型即用格式“%f”,否则有可能出现WA。
EOF的值是-1,加上C语言的整数是补码表示,则作为整数其每一个二进制位均为1。是按位非运算符,EOF值为0。
求绝对值,还是调用数学库函数来实现比较好,也可以简单地写个表达式来实现。
程序说明:(略)
参考链接:HDU2003 求绝对值【入门】
题记:(略)
AC的C语言程序(表达式)如下:
/* HDU2003 求绝对值 */
#include <stdio.h>
int main(void)
{
double x;
while (~scanf("%lf", &x))
printf("%.2f\\n", x >= 0 ? x : - x);
return 0;
}
AC的C语言程序(数学库函数)如下:
/* HDU2003 求绝对值 */
#include <stdio.h>
#include <math.h>
int main(void)
{
double x;
while (~scanf("%lf", &x))
printf("%.2f\\n", fabs(x));
return 0;
}
以上是关于HDU2003 求绝对值入门的主要内容,如果未能解决你的问题,请参考以下文章