将输入的数按照系统默认格式,定点格式显示浮点数。
输入
4
2123.324423
2123.324423
2123.324423
123.0000
输出
2123.32
2123.324423
2123.32
2123.324423
2123.32
2123.324423
123
123.000000
不能理解123后面的四个0是怎么没的,本人只能实现剩两个0的情况
输入
4
2123.324423
2123.324423
2123.324423
123.0000
输出
2123.32
2123.324423
2123.32
2123.324423
2123.32
2123.324423
123
123.000000
不能理解123后面的四个0是怎么没的,本人只能实现剩两个0的情况
解决方案
2
printf("%lg",123.00);//123
3
printf("%.2f",123.0000);
10
c++
cout.setf(ios::fixed); cout.precision(2); cout << 123.000000 << endl;
10
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<string>
#include<cstring>
#include<sstream>
#include<iomanip>
using namespace std;
int main() {
int N;
cin>>N;
for(int i = 0; i < N; i++) {
double M;
cin>>M;
if(M-(int)M == 0) {
cout.unsetf(ios::fixed);
cout<<M<<endl;
}
else {
cout<<setiosflags(ios_base::fixed)<<setprecision(2)<<M<<endl;
}
cout<<setiosflags(ios_base::fixed)<<setprecision(6)<<M<<endl;
}
}
#include<stdio.h>
#include<stdlib.h>
#include<string>
#include<cstring>
#include<sstream>
#include<iomanip>
using namespace std;
int main() {
int N;
cin>>N;
for(int i = 0; i < N; i++) {
double M;
cin>>M;
if(M-(int)M == 0) {
cout.unsetf(ios::fixed);
cout<<M<<endl;
}
else {
cout<<setiosflags(ios_base::fixed)<<setprecision(2)<<M<<endl;
}
cout<<setiosflags(ios_base::fixed)<<setprecision(6)<<M<<endl;
}
}