想到头疼都解决不了的问题,帮个忙
帮个忙,修改下面c程序
要求输入任意一组数,任取几个,写出它们全部排列
如1 5 6选2个为1 5 ,1 6,5 6
void comb(int *p,int k)
{int n,i;
int b[30];
int *q;
if(k>1)
{for(n=0;*(p+n);n++)
{ b[k]=*(p+n);
*(p+n)=*p;
*p=b[k];
comb(p+1,k-1);
q=p;
}
}
else
{for(i=0;*(q+i);i++)
printf("%d",b);
printf("\n");
}
}
void main()
{int m,j,t;
int a[30];
printf("qing shu ru zhong ge shu:");
scanf("%d",&m);
printf("qing shu ru shu zi:");
for(j=0;j<m;j++)
scanf("%d",a[j]);
printf("qing shu ru xuan ji:");
scanf("%d",&t);
comb(a[0],t);
printf("\n");
}