#include <stdio.h> main() {int a,b; scanf("%d %d",&a,&b); printf("%d",a⼀b); } 为什么结果总是0呢

2025年03月01日 05:15
有4个网友回答
网友(1):

#include 
main()

{
    int a,b;
    scanf("%d%d",&a,&b);
    printf("%d",a/b);
}

因为定义和输出的a,b都是整形。输出结果时精确到个位,将小数部分截去,仅保留整数部分。
比如2/3约等于0.667输出时只取小数点前,所以输出为0。

网友(2):

对于a/b
应为是整型除以整型
又是%d输出
所以结果只保留整数部分
也就是说当a的绝对值解决办法:
printf("%f",1.0*a/b);

网友(3):

你输入的时候把a的值输得比b的值大再试试

网友(4):

int是整形,只能用整数,小数,分数都不行