努力的修垒 发表于 2023-12-31 05:29:12

能帮我看下这几个是什么意思吗

#include <stdio.h>

int main()
{
      printf("打印五个字符:%c %c %c %c %c\n", 70, 105, 115, 104, 67);
      printf("前边用 填充:%10d\n", 2015);
      printf("前边用0填充:%010d\n", 2015);
      printf("右对齐,保留2位:%10.2f\n", 3.1416);
      printf("左对齐,保留3位:%-10.3f\n", 3.1416);
      printf("右对齐,指数形式:%10e\n", 520000.0);
      printf("左对齐,指数形式:%-10E\n", 520000.0);

      return 0;
}
除了第一个printf 里面的 %c 知道是什么意思其他的都有点迷惑
请求大佬们路过帮忙看一眼{:5_105:}

FishC 发表于 2023-12-31 05:29:23

当我们使用printf函数时,可以使用格式控制符(%后面的字符)来控制输出的格式。

1. `%c`:表示输出一个字符。在第一个printf语句中,它分别是70、105、115、104和67,它们对应的ASCII码分别是'F'、'i'、's'、'h'和'C',所以输出结果为FishC。

2. `%d`:表示输出一个有符号十进制整数。在第二个和第三个printf语句中,分别输出2015,前者在输出时会在其前面用空格填充,总宽度为10,而后者会在其前面用0填充,总宽度同样为10。

3. `%f`:表示输出一个浮点数。在第四个和第五个printf语句中,分别输出3.1416,前者会右对齐并保留两位小数,总宽度为10,后者会左对齐并保留三位小数,总宽度为10。

4. `%e`和`%E`:都表示以指数形式输出一个浮点数。其中,`%e`是以小写的'e'表示指数,而`%E`则以大写的'E'表示指数。在最后两个printf语句中,分别输出520000.0,前者右对齐,总宽度为10,后者左对齐,总宽度为10。

请注意,这些格式控制符只是告诉printf函数如何格式化输出,具体的内容和结果由传入的参数决定。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

liyifeng295641 发表于 2024-1-3 20:13:46

%d 整形
%f 浮点型
%c 字符型
新手先记这个,其他用到了就查。

王之叹息 发表于 2024-1-3 20:53:10

你有没有看过这个,这里面其实都有,可以慢慢仔细看看,别着急。
https://fishc.com.cn/thread-66471-1-1.html
第二个%10d中的10就是宽度,宽度就是:
width(宽度,可选)是一个数值,用于指定最小字段的宽度

转换后的参数输出宽度至少要达到这个数值。如果参数的字符数小于该数值,则在参数左边(如果 flags 设置为 -,要求左对齐的话则在右边)填充一些字符。填充字符通常为空格,但是如果 flags 设置为 0,则填充字符为数字 0。
哎呀,这一个一个说很慢,你先自己看再有哪一个地方说的话不理解可以再问,比如什么叫“参数的字符数小于该数值”之类的

努力的修垒 发表于 2024-1-26 17:40:00

王之叹息 发表于 2024-1-3 20:53
你有没有看过这个,这里面其实都有,可以慢慢仔细看看,别着急。
https://fishc.com.cn/thread-66471-1-1. ...

“参数的字符数小于该数值”这个我就开始不懂了大佬

王之叹息 发表于 2024-1-27 21:28:06

努力的修垒 发表于 2024-1-26 17:40
“参数的字符数小于该数值”这个我就开始不懂了大佬

我也是新手,“参数的字符数小于该数值”就是说比如printf("前边用 填充:%10d\n", 2015);”参数“就是2015,”参数的字符数“就是4,“该数值”就是%号和d中间的那个数,也就是10,所以4小于10
页: [1]
查看完整版本: 能帮我看下这几个是什么意思吗