热门

最新

红包

立Flag

投票

同城

我的

发布
2202_76033322
Bess
2 年前
true2202_76033322

分解质因数问题:
将一个正整数分解质因数。例如:输入90,打印90=2*3*3*5
#include <stdio.h>
#include <stdbool.h>

int main(){
int num,j;
_Bool flag=1;

printf("请输入一个值:");
scanf("%d",&num);
printf("%d=",num);

for(j=2;j<num/2;j++){
if(num%j==0){
flag=0;
break;
}else{ //判断是否为质数,是的话,最大质因子为他本身
flag=1;
}
}
for(int i=2;i<num;i++){
while(flag!=1){ //此时num不是质数

if(num%i==0){ //num=90 45 9
printf("%d*",i); //得出最小质因子 2 5 3
num/=i; //num应该为商 45 9 3
break;
}else{
break;
}
}
}

printf("%d",num);//3
return 0;
}

CSDN App 扫码分享
分享
评论
点赞
打赏
  • 复制链接
  • 举报
下一条:
传递了非浮点型参数注意格式
立即登录