Đệ quy ...
Code:#include<stdio.h> #include<math.h> #include<conio.h> int is_nt(int n) { if(n<2)return 0; else if(n==2)return 1; for(int i=2;i<=sqrt(n);++i) if (n%i==0){return 0;} return 1; } void nt(int n) { static int kk=1,k=n; if(k<kk)return; if(is_nt(n)&&k%kk==0) { k/=kk; if(k>=kk) printf("%d*",n); else printf("%d",n); nt(kk); } else if(kk!=k) { kk++; nt(kk); } } void tsnt(int n) { if(is_nt(n))cprintf("%d",n); else nt(n); } int main() { clrscr(); const int n=11; printf("%d = ",n); tsnt(n); getch(); return 0; }