【c语言】分解质因数

/******************************
 *输入一个整数,并分解质因数
 *流程:(1)如果为1和2直接输出
 *(2):偶数进入do循环,防止因为i的自增而出错;
 *(3):奇数进入for循环,让i自增,因为奇数肯定不能一直除2
 *data:2017.9.2
 *****************************/
#include

int main(void)
{
    int num,i;

    scanf("%d",&num);
    printf("1*");
    if(num == 1)
        printf("1\n");
    if(num == 2)
        printf("2\n");
    for(i = 2;i < num;i++){
        if(num % 2 == 0)//偶数
            do{
                num /= i;
                printf("%d*",i);
            }while(num % i == 0);
        else//奇数
            if(num % i == 0){
                num /= i;
                printf("%d*",i);
            }
   
    }
    printf("%d",num);
    return 0;
}
 

你可能感兴趣的:(c语言)