我的代码使用divison运算符不起作用

时间:2016-08-26 15:51:43

标签: c division

我最近开始学习C.在理解了基础知识后,我开始实现我学到的东西,所以我试图执行基本的数学运算,如add,substract等,但是dividion运算符不起作用。每当我给它两个不同的值时,答案是0.00000。 请帮我理解错误。这是我的代码。

#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();
}

1 个答案:

答案 0 :(得分:0)

你不能分割整数并期望得到浮点值,只需这样做

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

当然要检查b != 0

ab整数以来,您只能期望结果为整数,将f声明为float将不会自动提供帮助。例如

1 / 2

等于0,而

1.0 / 2 == 1 / 2.0 == 1.0 / 2.0 != 0