2016-08-26 5 views
-3

私は最近Cを学び始めました。基礎を理解した後、私が学んだものを実装し始めたので、add、substractなどの基本的な算術演算を実行しようとしています。除算演算子は機能しません。私がそれに2つの異なる値を与えるたびに、答えは0.00000です。 エラーを理解するのを手伝ってください。ここに私のコードです。divison演算子を使用したコードが動作しません

#include<stdio.h> 
void main() 
{ 
    int a,b,c,d,e; 
    float f = 0; 
    clrscr(); 
    printf("enter the values of a, b\n"); 
    scanf("%d %d", &a, &b); 
    c = a + b; 
    d = a - b; 
    e = a * b; 
    f = a/b; 
    printf("%d\n %d\n %d\n %f\n", c, d, e, f); 
    getch(); 
} 
+5

は**除算演算子は動作しません、このタイトルを使用しないでくださいに対し、0に等しい**のために、そしてどのように我々はプログラムを書くのですか? –

+0

入力?実際の出力は?期待されるアウトプット? – 4386427

+2

と[**整数除算**については、[Cで良い本を得る](http://stackoverflow.com/q/562303/253056) 。 –

答えて

0

あなたはこの

f = (float) a/(float) b; 

そしてもちろんチェックb != 0の操作を行い、整数を分割し、その結果として、浮動小数点値を期待することはできません。 abは整数をしているので、

はあなただけで自動的に助けにはなりません floatよう fを宣言し、その結果として、整数を期待することができます参照してください。インスタンス

1/2 

1.0/2 == 1/2.0 == 1.0/2.0 != 0 
関連する問題