Problem A: 输入双精度实数,保留两位小数输出
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:9
Solved:8
Description
输入n个数,每个数据输入一个双精度实数,保留两位小数输出。
Input
第一行:输入数据的个数n
第二行到第n+1行:每行一个双精度实数类型的数据,可以带小数,也可以不带小数
第二行到第n+1行:每行一个双精度实数类型的数据,可以带小数,也可以不带小数
Output
保留两位小数输出。
若输入小数位数多于两位,则按四舍五入进行截取。
若输入小数位数多于两位,则按四舍五入进行截取。
Sample Input Copy
6
2
23.3333
0
16.866
0.899
666
Sample Output Copy
2.00
23.33
0.00
16.87
0.90
666.00
HINT
c++语言:单精度实数类型是float,双精度实数类型是double
保留小数位数用法如下:
1.cout语句
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
float a; //定义一个单精度实型
a=10.123456; //10.123456赋值给a这个变量
cout<<fixed<<setprecision(3)<<a<<endl; //保留三位小数,输出结果是10.123
cout<<fixed<<setprecision(5)<<a<<endl; //保留五位小数,输出结果是10.12346
}
2.格式化输出语句
C++兼容C语言,C语言中的浮点数分为float(单精度)和double(双精度)两种类型。
float通常占用4个字节,而double通常占用8个字节,因此double类型的精度高于float类型。
在C语言标准输入输出函数scanf和printf中,float类型使用%f作为格式化说明符,而double类型则使用%lf作为格式化说明符。
单精度实数
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
float a; //定义一个单精度实型
scanf("%f",&a);//格式化输入一个单精度实数。如果这里输入一个10.123456
printf("%.3f\n",a); //保留三位小数,输出结果是10.123
printf("%.5f",a); //保留五位小数,对第六位进行四舍五入,输出结果是10.12346
}
在上述代码中,%.3f是格式化字符串,其中%表示格式化字符的开始,.3表示保留三位小数,f表示浮点数。\n表示换行。
双精度实数
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
double a; //定义一个双精度实型
scanf("%lf",&a);//格式化输入一个双精度实数。如果这里输入一个10.12345678
printf("%.3lf\n",a); //保留三位小数,输出结果是10.123
printf("%.5lf",a); //保留五位小数,对第六位进行四舍五入,输出结果是10.12346
}
保留小数位数用法如下:
1.cout语句
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
float a; //定义一个单精度实型
a=10.123456; //10.123456赋值给a这个变量
cout<<fixed<<setprecision(3)<<a<<endl; //保留三位小数,输出结果是10.123
cout<<fixed<<setprecision(5)<<a<<endl; //保留五位小数,输出结果是10.12346
}
2.格式化输出语句
C++兼容C语言,C语言中的浮点数分为float(单精度)和double(双精度)两种类型。
float通常占用4个字节,而double通常占用8个字节,因此double类型的精度高于float类型。
在C语言标准输入输出函数scanf和printf中,float类型使用%f作为格式化说明符,而double类型则使用%lf作为格式化说明符。
单精度实数
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
float a; //定义一个单精度实型
scanf("%f",&a);//格式化输入一个单精度实数。如果这里输入一个10.123456
printf("%.3f\n",a); //保留三位小数,输出结果是10.123
printf("%.5f",a); //保留五位小数,对第六位进行四舍五入,输出结果是10.12346
}
在上述代码中,%.3f是格式化字符串,其中%表示格式化字符的开始,.3表示保留三位小数,f表示浮点数。\n表示换行。
双精度实数
#include<bits/stdc++.h> //万能头文件
using namespace std;
int main()
{
double a; //定义一个双精度实型
scanf("%lf",&a);//格式化输入一个双精度实数。如果这里输入一个10.12345678
printf("%.3lf\n",a); //保留三位小数,输出结果是10.123
printf("%.5lf",a); //保留五位小数,对第六位进行四舍五入,输出结果是10.12346
}