#include int prime(int n)//判断质数 { for(int i=2;i*i<=n;i++){//只要能被整除,不是质数 if(n%i==0)return 0; } return 1;//否则是质数 } int f(int n) { int k=0; while(n!=1){//直到整数被他的因子除到等于1 for(int i=2;i<=n;i++){//因子从二开始 if(n%i==0&&prime(i)==1){//如果是因子同时是质数 n/=i;//整数除以因子 if(k==1)printf("*");//第一个数前面没有*,最后一个数后面没* k=1; printf("%d",i);//输出因子 break;//跳出循环,因子重新从二开始 } } } } int main() { int a,b; scanf("%d%d",&a,&b); for(int i=a;i<=b;i++){ printf("%d=",i); f(i); printf("\n"); } return 0; }
0.0分
2 人评分