gam*_*boy 46 c printf complex-numbers
如何打印(带printf)复数?例如,如果我有这个代码:
#include <stdio.h>
#include <complex.h>
int main(void)
{
double complex dc1 = 3 + 2*I;
double complex dc2 = 4 + 5*I;
double complex result;
result = dc1 + dc2;
printf(" ??? \n", result);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
..我应该使用什么转换说明符(或其他东西)"???"
Joh*_*eek 55
printf("%f + i%f\n", creal(result), cimag(result));
Run Code Online (Sandbox Code Playgroud)
我不相信C99复杂类型有特定的格式说明符.
lev*_*vif 14
让我们%+f选择正确的符号作为想象部分:
printf("%f%+fi\n", crealf(I), cimagf(I));
Run Code Online (Sandbox Code Playgroud)
输出:
0.000000+1.000000i
Run Code Online (Sandbox Code Playgroud)
请注意,i最后.