#include"stdio.h" int main() { int m,i; scanf("%d",&m); int a; a=m; printf("%d=",a); for(i=2;i<=m;i++) //最小的质数为2,所以i的初值为2,不能是1。 { while(m!=i) { if(m%i==0) { printf("%d*",i); //不能写成printf("m=%d*",i);因为进入循环后,m的值在不断地改变。 m/=i; } else break; } } printf("%d\n",m); //该输出不能放到for()语句中,否则会造成满屏输出的情况。 return 0; } |
Double click to view unformatted code.