2016-03-27 6 views
-2

私はCでいくつかの基本的なコードを実行して2つの浮動小数点変数を宣言しようとしています。そしてそれらを分けて3番目の変数に入れてください。floatとprintfを使ってCに問題がある

Success time: 0 memory: 2156 signal:0 
を:この後、私は、私は、コードをコンパイルして実行するには、オンラインコンパイラ「www.ideone.com」を使用していて、これは私が得ている結果であり、すべての3

#include <stdio.h> 
int main() 
{ 
    /* variable definition: */ 
    float a, b, c; 
    /* variable initialization */ 
    a = 1.2; 
    b = 2.7; 
    c = a/b; 
    printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c); 
    return 0; 
} 

を印刷します

浮動小数点(a、b)と商(c)は次のとおりです。1073741824,1072902963、-1610612736

おそらくコードで間違いを犯したことがありますか?それはクラスのためであり、私はintからfloatに変更するまで、すべての手順のステップでうまくいきました。

+0

%dは整数引数が必要です(printfのマニュアルを参照)。 – fvu

+0

http://www.cplusplus.com/reference/cstdio/printf/%dは整数を表し、%fは浮動小数点数を表します。 – OldProgrammer

答えて

1

あなたはこの変更ので、山車を印刷する:これに

printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c); 

:詳細は

printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c); 

を、refをご確認ください。

printf("Floats (a,b) and quotient (c) are : %d,%d,%d \n", a,b,c); 

+1

完璧に働いてくれてありがとう、私はそれをする必要があるとは思っていなかったし、特定のデータタイプに特有のものだとは思っていなかった! –

+0

あなたは@RickHammerを知っています! ;) – gsamaras

0

%d%f代わり

変更を使用し、フロートの正しい変換ではありません

printf("Floats (a,b) and quotient (c) are : %f,%f,%f \n", a,b,c); 

、あなたは問題ないはずです。

関連する問題