c输出printf与c++输出cout

在C语言中输出为printf。
表示输出类型的格式字符        格式字符意义
a                                                                  浮点数、十六进制数字和p-计数法(C99)
A                                                                  浮点数、十六进制数字和p-计数法(C99)
c                 输出单个字符
d                 以十进制形式输出带符号整数(正数不输出符号)
e                 以指数形式输出单、双精度实数
E                 以指数形式输出单、双精度实数
f                  以小数形式输出单、双精度实数
g                 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大   于等于精度时使用
G                 以%f%e中较短的输出宽度输出单、双精度实数,%e格式在指数小于-4或者大于等于精度时使用
i                                                                   有符号十进制整数(与%d相同)
o                 以八进制形式输出无符号整数(不输出前缀O)
p                                                                  指针
s                 输出字符串
x                 以十六进制形式输出无符号整数(不输出前缀OX)
X                以十六进制形式输出无符号整数(不输出前缀OX)
u                 以十进制形式输出无符号整数
例:

1.printf("%3.0f",floatNum):不保留小数//当中f为输出类型字符,想有对应的类型输出请输入对应的字符。

说明:%3.0f表明待打印的浮点数(floatNum)至少占3个字符宽,且不带小数点和小数部分,整数部分至少占3个位宽;

注意:这里的3只代表整数部分至少占3位,舍弃小数点和小数点后面的部分

2.printf("%6.2f".floatNum):保留两位小数

说明:%6.2f 表明待打印的数(floatNum)至少占6个字符宽度(包括两位小数和一个小数点),且小数点后面有2位小数,小数点占一位,所以整数部分至少占3位。

注意:这里的6是待打印的数至少占据的字符宽度,包括两位小数(如果小数不够两位用0补位,例如100.1打印出来为100.10)和一个小数点,所以整数部分至少占3个字符宽度。

3.单精度实数的有效位数一般为7位,输出6位小数,超出有效位数输出就是错误的。

4.双精度数有效位数一般为16位,输出6位小数,超出有效位数可能截断或错误值。


在c++中输出为cout.

首先要加头文件:#include//cout中使用这个头文件的函数中有继承性

一:setprecision

  作用:控制输出流显示浮点数的数字个数,setprecision(n)就是输出的n个数,会有四舍五入。

比如:double s=20.7843000,

cout<

cout<

cout<

cout<

cout<

cout<

   可见,小数部分末尾为0时,是输不出来的!要想输出来,就得用showpoint了。

特别提示

   如果再在这些语句后面加个两个语句:

cout<<1<

cout<<1.00800<

猜到会输出什么吗?

第一条输出:1。不是浮点型。

第二条为:1.008。承接setprecision(8)的这条规则语句。

注:

如果直接有语句

int main()

{

cout<<1<

cout<<1.00<

}

第一条输出:1。

第二条也为:1。按整型输出

 

二:setprecision与showpoint

语法:在输出语句前声明:cout.setf(ios::showpoint);就行了!

还比如:double s=20.7843000,代码如下:

cout.setf(ios::showpoint);

cout<

cout<

cout<

cout<

cout<

cout<

可见,就会输出想要的数据数目!

 特别提示

如果再在这些语句后面加个两个语句:

cout<<1<

cout<<1.0080<

猜到会输出什么吗?

第一条输出:1。不是浮点型。

第二条也为:1.0080000。承接setprecision(8)的这条规则语句。

 

三:setprecision与fixed

如果想要保留几位小数,那setprecision就得与fixed合作了!!

语法:在输出语句前声明:cout.setf(ios::fixed);

 比如:double s=20.7843909,代码如下:

cout.setf(ios::fixed);

cout<

cout<

cout<

cout<

cout<

cout<

 特别提示

    如果也再在这些语句后面加个两个语句:

cout<<1<

cout<<1.008<

猜到会输出什么吗?

第一条输出:1。

第二条为:1.00800000。

就是承接了setprecision(8)的这条规则语句,是浮点型的都会保留8个小数。是整型的还是整型!)

语句也可以写成:cout<

       

  就算后面的语句没有写<

比如有语句:

cout<

A:cout<

B:cout<

AB语句均会按保留7个,8个小数处理,不会再按有7或8个浮点数处理。

 如果下面有语句c:

cout<<1.008<


四:setprecision、showpoint与fixed

cout<cout<cout<

   比如:double s=20.7843909

1.有语句

cout<

cout<

2.有语句:

cout<

cout<

 3.有语句:

  cout<cout<4.有语句:

cout<cout<cout<

5.有语句:

cout<cout<cout<


你可能感兴趣的:(C/C++)