0

だから私はこのコードを持っています

double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};

printf("%d", balance[0]);

したがって、配列の最初の要素が出力されることを期待しています。これは 1000.0 になります。ただし、何らかの奇妙な理由で 0 を出力し続けます。誰でも理由について考えがありますか??

4

6 に答える 6

1

a の書式指定子を使用して asigned intを出力していますdouble
これを使って-

printf("%f", balance[0]);

于 2013-11-13T04:55:01.903 に答える
1

を印刷するには、次doubleを使用します%f

printf("%f", balance[0]);

d inがdouble%dを意味すると混乱するかもしれませんが、実際にはdecimalを意味します。

于 2013-11-13T04:55:07.640 に答える
1

使用できない double 値を出力するには、そのために使用%dする必要があります%f

double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};

printf("%f", balance[0]);
于 2013-11-13T05:02:05.350 に答える
0

コードの printf ステートメントで間違った書式指定子を使用しました。%d 書式指定子を使用して浮動小数点値を出力しようとしていますが、予期しない出力が発生します。

%dの代わりに%fを使用すると、次のようにすべて問題なく動作します。

double balance[5] = {1000.0, 2.0, 3.4, 17.0, 50.0};
printf("%f", balance[0]);

出力:

1000.000000
于 2013-11-13T05:53:36.987 に答える