2301_77416222 2023-04-16 01:13 采纳率: 75%
浏览 33

如何用C语言求质因数以及将它们从小到大相乘输出

img


完全不会啊,首先采用哪种循环不太清楚,也不知道怎么确定它为质因数

  • 写回答

4条回答 默认 最新

  • 夜枭龙 2023-04-16 01:42
    关注
    
    #include <stdio.h>
    
    int main()
    {
        int n, i;
        scanf("%d", &n);
        printf("%d=", n);
        for (i = 2; i <= n; i++)
        {
            while (n % i == 0)
            {
                printf("%d", i);
                n /= i;
                if (n != 1)
                    printf("*");
            }
        }
        printf("\n");
        return 0;
    }
    
    
    
    程序的执行步骤如下:
    
    首先从键盘读入一个整数n,表示待分解的数。
    然后用循环从2到n依次枚举所有可能的质因数i。
    对于每个质因数i,用while循环将n不断除以i,直到n无法再被i整除为止。
    每次除完i之后,如果n不等于1,就输出一个乘号。
    循环结束后,输出换行符。
    这样,程序就能够输出n的所有质因数,并将它们从小到大相乘输出。
    
    评论

报告相同问题?

问题事件

  • 创建了问题 4月16日