当前位置:   article > 正文

【C语言】printf的常规用法_printf打印浮点数小数点?

printf打印浮点数小数点?

 目录

1 printf 是什么

2 printf 打印的类型

3 格式字符的类型

4 常见格式字符打印

4.1 d格式字符

4.2 f格式字符

4.2.1 基础型

4.2.2 指定宽域和小数位数

4.3 c格式字符和s格式字符

5 printf中的常见问题

问题一

问题二

6 printf的返回值


1 printf 是什么

        printf 函数是一个标准库函数中的格式输出函数,把格式化的数据进行标准输出,输出到运行框上,在使用该函数的时候需要使用头文件“stdio.h”。

2 printf 打印的类型

        printf函数中一般打印三种数据类型:

  • 格式字符。格式字符由“%”引导,如%d、%f等。它的作用是控制输出字符的格式
  • 转义字符。格式控制字符串里的转义字符按照转义后的含义输出,如上面printf函数双引号内的换行符“\n”,即输出回车。
  • 普通字符。普通字符即需要在输出时原样输出的字符,如上面printf函数中双引号内的“f=”和“c= ”部分。

3 格式字符的类型

格式字符 说明
d输出带符号的十进制整数,正数的符号省略
u以无符号的十进制整数形式输出
o以无符号的八进制整数形式输出,不输出前导符0
x以无符号十六进制整数形式(小写)输出,不输出前导符0x
X以无符号十六进制整数形式(大写)输出,不输出前导符0X
f以小数形式输出单、双精度数,隐含输出6位小数
e以指数形式(小写e表示指数部分)输出实数
E以指数形式(大写E表示指数部分)输出实数
g自动选取f或e中输出宽度较小的一种使用,且不输出无意义的0
c输出一个字符
s输出字符串
p输出地址值

4 常见格式字符打印

4.1 d格式字符

        d格式字符可用于输出 int型、 short型,long int 型等等。 

  1. int a = 10;
  2. int b = -20;
  3. short c = 30;
  4. long d = 40;
  5. printf("%d %d %d %d",a, b, c, d);

4.2 f格式字符

        用于输出浮点数,也就是小数,可用于输出 float 型和 double 型

4.2.1 基础型

  1. float fa = 3.5;
  2. double da = 4.5;
  3. printf("%f %f", fa, da);

4.2.2 指定宽域和小数位数

        从上面可以发现小数在输出的时候默认的位数为6位,我们可以对其进行设置。

        设置方法为 % m . n f 其中m 是指定该浮点数的长度的n 是指定该浮点数小数位数的

        其中若在 m 之前加上 - 号,那么会给输出的结果进行左对齐。如下图所示。

  1. float fa = 3.5;
  2. double da = 4.5;
  3. printf("%f %f\n", fa, da);
  4. printf("%8.2f %8.2f\n", fa, da);
  5. printf("%-8.2f %-8.2f\n", fa, da);

4.3 c格式字符和s格式字符

        分别用于输出字符和字符串。

  1. char ch = 'a';
  2. printf("%c", ch);
  3. printf("%s", " A B C");
正确使用

5 printf中的常见问题

问题一

c格式字符只能输出一个字符;s格式字符不能直接输出变量,但可以直接输出字符串,且字符串中可以包括空格。

当%c输出字符串时
当%s输出变量时

问题二

格式控制字符串中有%引导的格式字符时,输出值参数表中的数量以及类型必须和格式字符一致。否则就会得不到理想的值。

  1. int a = 20;
  2. double b = 45.5;
  3. float c = 15.5;
  4. char d = 'Y';
  5. printf("a = %d, b = %d\n", a, b);
  6. printf("c = %.2f, d = %.2f\n", c, d);

6 printf的返回值

printf也是有返回值的,而printf的返回值为输出内容的字数多少。(转义字符算一个字符

  1. int a = 43;
  2. printf("%d\n", printf("%d", printf("%d", a)));
  3. int num = printf("%d", printf("A, !, 1,\n"));
  4. printf("\n");
  5. printf("%d", num);

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/64784
推荐阅读
相关标签
  

闽ICP备14008679号