白牡丹秀色可餐 发表于 2019-8-4 11:36:31

s1e4问题

#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中E前面要用-10?
第一个printf中后面的数字是怎么转化为字母的?

谢谢!

jackz007 发表于 2019-8-4 11:42:51

本帖最后由 jackz007 于 2019-8-4 11:45 编辑

    1、仔细观察一下输出的内容,不加 - 是右对齐,加 - 是左对齐。

    2、%c 表示把一个整数视为字符编码显示成单个字符。例如,整数 65 按 %c 显示就是字母 'A',66、67 就是 'B'、'C'。
页: [1]
查看完整版本: s1e4问题