69,373
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <conio.h>
int fun(int choice[],int r,int n)
{
int i,j;
for(i=r-1;i>=0;i--)
if(choice[i]<n-r+i)
break;
if(i<0)
return 0;
choice[i]+=1;
for(j=i+1;j<r;j++)
choice[j]=choice[j-1]+1;
return 1;
}
void comb(char source[],int total,int count)
{
int choice[5];
int i;
for(i=0;i<count;i++)
choice[i]=i;
do
{
printf("\n");
for(i=0;i<count;i++)
{
int t=choice[i];
printf("%c ",source[t]);
}
}while(fun(choice,count,total));
}
int main()
{
char array[4]={'a','b','c','d'};
clrscr();
comb(array,4,3);
getch();
return 0;
}