請幫我把以下的程式加上註解,謝謝!
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX 20
static char a[MAX];
static int co;
void gen(int n){
n++;
char tmp;
for(int i=n;i<co;i++){
tmp=a[n];
a[n]=a;
a=tmp;
if(n==co-1)
printf("%s\n",a);
else
gen(n);
tmp=a[n];
a[n]=a;
a=tmp;
}
}
int main(){
printf("請輸入a,b,c,d,e:\n");
scanf("%s",a);
co=strlen(a);
gen(-1);
system("pause");
return 0;
}