用while循环分解质因数
时间: 2023-12-13 18:34:17 浏览: 78
以下是两种用while循环分解质因数的例子:
1.引用:
```c
#include "stdio.h"
void main(){
int n;
int k=2;
int m;
m=0;
printf("请输入一个正整数:");
nn:
m=scanf("%d",&n);
if(m!=1||n<1) {
printf("数据输入有误,请重输:");
fflush(stdin);
goto nn;
}
printf("\n\t%d=",);
if(n!=1) {
while(n!=1)//只要n的值不为1,即最后一个质数输出之后
{
if(n%k==0) {
if(n==k)//如果是最后一个质数
printf("%d",k);
else
printf("%d×",k);
n=n/k;
k=2;
}
else
k++;
}
}
else
printf("%d的质因数是1",n);
}
```
2.引用:
```c
#include <stdio.h>
int main() {
int n,j,k;
scanf("%d",&n);
for(j=2;n>=j;j++) {
while(n%j==0) {
printf("%d,",j);
n=n/j;
}
}
return 0;
}
```