c++浮点数的格式化输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++浮点数的格式化输出相关的知识,希望对你有一定的参考价值。
//使用标准c++编写#include
<iostream>
#include
<iomanip>//精度设置必须包括的头文件
using
namespace
std;
int
main()
double
a=3.5;
int
b=10;
//方法一:操作符函数的格式控制
//cout.precision(2),设置精度为2
//right:设置左对齐;fixed:控制浮点型输出格式;
//setw(5):设置输出位宽为5
cout<<right<<fixed<<setw(5)<<setfill('0')
<<setprecision(2)<<a<<endl;
//输出结果为03.50
//方法二:ios类成员函数的格式控制
cout.precision(4);
//setprecision(4),设置精度为4
cout<<a<<endl;
//输出结果为3.5000
//setfill('0'):设置填充字符为'0'
//static_cast<double>(b):将整型的b,
//生成一个双精度浮点型副本进行操作,而不改变其值和类型
cout<<fixed<<setfill('0')<<setprecision(2)
<<fixed<<static_cast<double>(b)<<endl;//输出10.00
return
0;
这样可以么? 参考技术A //使用标准C++编写
#include
<iostream>
#include
<iomanip>//精度设置必须包括的头文件
using
namespace
std;
int
main()
double
a=3.5;
int
b=10;
//方法一:操作符函数的格式控制
//cout.precision(2),设置精度为2
//right:设置左对齐;fixed:控制浮点型输出格式;
//setw(5):设置输出位宽为5
cout<<right<<fixed<<setw(5)<<setfill('0')
<<setprecision(2)<<a<<endl;
//输出结果为03.50
//方法二:IOS类成员函数的格式控制
cout.precision(4);
//setprecision(4),设置精度为4
cout<<a<<endl;
//输出结果为3.5000
//setfill('0'):设置填充字符为'0'
//static_cast<double>(b):将整型的b,
//生成一个双精度浮点型副本进行操作,而不改变其值和类型
cout<<fixed<<setfill('0')<<setprecision(2)
<<fixed<<static_cast<double>(b)<<endl;//输出10.00
return
0;
这样可以么? 参考技术B #include
<stdio.h>
#include
<afxwin.h>
#include
<conio.h>
int
main()
char
b[100];
int
a;
printf("请输入一个数");
scanf("%s",b);
a=strlen(b);
CString
str;
str.Format("%d",a);
a--;
CString
str1;
str1.Format("%s",b);
str1=str1.Right(a);
printf("%s",str1);
getch();
return
0;
如果错误工程->设置->C/C++的分类里选择Code
Generation在USE
run-time
library:中选择Debug
Multithreaded基本就不会错了
PAT-混合类型数据格式化输入
本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。
输入格式:
输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。
输出格式:
在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。
输入样例:
2.12 88 c 4.7
输出样例:
c 88 2.12 4.70
代码如下:
#include<stdio.h> main() { float a; int b; char c; float d; scanf("%f%d",&a,&b); getchar(); scanf("%c%f",&c,&d); printf("%c %d %.2f %.2f",c,b,a,d); }
以上是关于c++浮点数的格式化输出的主要内容,如果未能解决你的问题,请参考以下文章