-2

printf 函数中的 %d 说明符意味着我们要将变量显示为十进制整数,而 %f 说明符将其显示为浮点数等等。但是 %di 说明符有什么作用?

我在这个程序中找到了这个说明符(C 程序加减乘除复数,复数算术)

例如,

printf("Division of two complex numbers = %d %di",temp1/temp3,temp2/temp3);
4

4 回答 4

3

如果temp/temp3评估为 25 并temp2/temp3评估为 15,则该行

printf("Division of two complex numbers = %d %di",temp1/temp3,temp2/temp3);

将打印

Division of two complex numbers = 25 15i

上面的i格式说明符打印 letter i%d零件打印数字。在上述格式说明符中使用的唯一目的i是以更用户友好的方式打印复数的实部和虚部。

于 2015-10-06T15:14:34.773 回答
2

没有说明符"%di"。所以,它的工作原理是"%d"你有一个字母"i"(这是打印复数值虚部的标准方法)。

所以当你有一条线时printf("Sum of two complex numbers = %d + %di",c.real,c.img);,它是这样工作的:

  • 它打印“两个复数之和=”,
  • 它打印价值c.real
  • 它打印“+”,
  • 它打印价值c.img
  • 它打印出来"i"
于 2015-10-06T15:09:45.410 回答
2

C 中没有 %di 之类的东西!事实上 %d 已在代码中用于整数!由于您正在打印一个复数,例如

4 + 5i

您需要在打印 5 后立即打印一个 'i,因此使用“%di”“%d”,并且 printf 函数会单独看到 i!

于 2015-10-06T15:13:18.417 回答
0

C 中没有说明符“%di”。它只是作为“%d”正常工作,在它之后你会打印一个字母“i”。例如,您的输出将如下所示:

int temp1=8;
int temp2=10;
int temp3=2;

printf("Division of two complex numbers = %d %di",temp1/temp3,temp2/temp3);

输出:Division of two complex numbers = 4 5i

于 2015-10-06T17:54:52.603 回答