如果结果是浮点数,如何停止除法?

How to stop a division if the result is a float number?

我已经编写了这段代码,但它向我展示了部分结果,例如示例 50/3 向我展示了 16,而我想介绍如何在浮动时停止此类操作。怎么办?

#include <stdio.h>
int main(){
    int number, divisor, x, y;
    printf("Enter the Natural Number to find Divisors\n");
    scanf("%d", &number);
    printf("Enter the Natural Number to divide for\n");
    scanf("%d", &x);
        
    printf("Divisors of the number %d are \n", number);
    y=number/x;
    for (divisor = 1; divisor<=number;divisor++){
    if((number%divisor)==0){
    printf("%d\n", divisor);
    
    }
    else{
    continue; }
    
}
printf("The result of the division is %d", y);
return 0;
}

这是我必须阅读您的代码的程度:

for (i=0;i<x;i++)
{
    j=x/i;

你认为除以 0 应该做什么?

但让我们继续前进:

if("J=%d")

这将测试字符串常量是否为 NULL,这永远不可能。

总体而言,您似乎在尝试测试 x 是否为质数。在这种情况下,您需要在 2 开始循环并测试余数:

if (x % i == 0)