C 语言动态内存

C 语言数学

C 语言命令行

C 语言格式说明符

格式说明符是用于格式化输入和输出函数的字符串。格式字符串确定输入和输出的格式。格式字符串始终以“%”字符开头。

printf() 函数中常用的格式说明符有:

格式说明符描述
%d 或 %i它用于打印有符号整数值,其中有符号整数表示变量可以包含正值和负值。
%u它用于打印无符号整数值,其中无符号整数表示变量只能包含正值。
%o它用于打印八进制无符号整数,其中八进制整数值始终以 0 值开头。
%x它用于打印十六进制无符号整数,其中十六进制整数值始终以 0x 值开头。在此,字母字符以小写字母打印,例如 a、b、c 等。
%X它用于打印十六进制无符号整数,但 %X 打印大写字母字符,如 A、B、C 等。
%f它用于打印十进制浮点值。默认情况下,它会在“.”之后打印 6 个值。
%e/%E它用于科学记数法。它也被称为尾数或指数。
%g用于打印十进制浮点数,使用固定精度,即输入的小数点后的值与输出的值完全相同。
%p它用于以十六进制形式打印地址。
%c它用于打印无符号字符。
%s它用于打印字符串。
%ld它用于打印长符号整数值。

让我们通过一个例子来详细了解格式说明符。

%d 例子 (Example)

int main()  
{  
  int b=6;  
  int c=8;  
  printf("b 的值为:%d", b);  
  printf("\n c 的值为:%d",c);  
  return 0;  
}

在上面的代码中,我们使用 %d 说明符打印 b 和 c 的整数值。

输出


%u 例子 (Example)

int main()  
{  
  int b=10;  
  int c= -10;  
  printf("b 的值为:%u", b);  
  printf("\nc 的值为:%u",c);  
  return 0;  
}

在上面的程序中,我们使用无符号格式说明符(即 %u)显示 b 和 c 的值。b 的值为正,因此 %u 说明符打印 b 的确切值,但它不打印 c 的值,因为 c 包含负值。

输出

%o 例子 (Example)

int main()  
{  
  int a=0100;  
  printf("a 的八进制值为: %o", a);  
  printf("\na 的整数值为:%d",a);  
  return 0;  
}

在上面的代码中,我们显示了 a 的八进制值和整数值。

输出

%x 和 %X 例子 (Example)

int main()  
{  
  int y=0xA;  
  printf("y 的十六进制值为:%x", y);  
  printf("\ny 的十六进制值为:%X",y);  
  printf("\ny 的整数值为: %d",y);  
  return 0;  
}

在上面的代码中,y 包含十六进制值“A”。我们以两种格式显示 y 的十六进制值。我们使用 %x 和 %X 来打印十六进制值,其中 %x 以小写字母显示值,即“a”,%X 以大写字母显示值,即“A”。

输出

%f 例子 (Example)

int main()  
{  
  float y=3.4;  
  printf("y 的浮点数是: %f", y);  
  return 0;  
}

上面的代码打印了 y 的浮点值。

输出

%e 例子 (Example)

int main()  
{  
  float y=3;  
  printf("y 的指数值为: %e", y);  
  return 0;  
}

输出

%E 例子 (Example)

int main()  
{  
  float y=3;  
  printf("y 的指数值为: %E", y);  
  return 0;  
}

输出

%g 例子 (Example)

int main()  
{  
  float y=3.8;  
  printf("y 的浮点数是: %g", y);  
  return 0;  
}

在上面的代码中,我们使用 %g 说明符显示 y 的浮点值。%g 说明符以相同的精度显示与输入相同的输出。

输出

%p 例子 (Example)

int main()  
{  
  int y=5;  
  printf("y 的十六进制地址值为:%p", &y);  
  return 0;  
}

输出

%c 例子 (Example)

int main()  
{  
  char a='c';  
  printf("a 的值为: %c", a);  
  return 0;  
}

输出

%s 例子 (Example)

int main()  
{  
  printf("%s", "RocSchool");  
  return 0;  
}

输出


最小字段宽度说明符

假设我们想要显示一个在屏幕上占用最少空间的输出。您可以通过在格式说明符的百分号后显示一个整数来实现这一点。

例子 (Example)

int main()  
{  
 int x=900;  
  printf("%8d", x);  
  printf("\n%-8d",x);  
  return 0;  
}

在上面的程序中,%8d 说明符显示 8 个空格后的值,而 %-8d 说明符将使值左对齐。

输出


现在我们将看到如何填充空白区域。它显示在下面的代码中:

例子 (Example)

int main()  
{  
 int x=12;  
  printf("%08d", x);  
  return 0;  
}

在上面的程序中,%08d 表示空白处用零填充。

输出

指定精度

我们可以使用“.”来指定精度。(点)运算符后跟整数和格式说明符。

例子 (Example)

int main()  
{  
 float x=12.2;  
  printf("%.2f", x);  
  return 0;  
}

输出

上一主题 C 语言的注释 下一主题 C 语言的转义序列
  • 使用社交账号登录,本站支持
全部评论(0)