方法一:使用setprecision(n),头文件iomanip

setprecision(n)   保留n位有效数字

fixed << setprecision(n)   保留n位小数

#include

#include

using namespace::std;

int main() {

double a=1.01234567;

int n;

cin >> n;

cout << setprecision(n) << a << endl;

cout << fixed << setprecision(n)<< a <

cout << setprecision(n) << a << endl;

}

输入n为5,输出分别为

1.0123 1.01235 1.01235

fixed << setprecision(n)固定了有效数字位数,所以第三次输出1.01235

方法二:使用printf

#include

using namespace::std;

int main() {

double a=1.01234567;

int n;

cin >> n;

printf("%.*f", n, a);

}

输入n为6,输出为1.012346

printf中的*代表一个参数,n为6时,printf("%.*f", n, a);相当于printf("%.6f", a);

初学者,见解不足,如有错误请指出

精彩文章

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: