だから私はこのコードを持っています
double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
printf("%d", balance[0]);
したがって、配列の最初の要素が出力されることを期待しています。これは 1000.0 になります。ただし、何らかの奇妙な理由で 0 を出力し続けます。誰でも理由について考えがありますか??
a の書式指定子を使用して asigned int
を出力していますdouble
。
これを使って-
printf("%f", balance[0]);
を印刷するには、次double
を使用します%f
。
printf("%f", balance[0]);
d inがdouble%d
を意味すると混乱するかもしれませんが、実際にはdecimalを意味します。
使用できない double 値を出力するには、そのために使用%d
する必要があります%f
。
double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
printf("%f", balance[0]);
コードの printf ステートメントで間違った書式指定子を使用しました。%d 書式指定子を使用して浮動小数点値を出力しようとしていますが、予期しない出力が発生します。
%dの代わりに%fを使用すると、次のようにすべて問題なく動作します。
double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
printf("%f", balance[0]);
出力:
1000.000000