问题遇到的现象和发生背景
题目截了个图,输出格式不用管,按照回溯算法写的,不知道哪里出问题了导致输出有重复
![img](
https://img-mid.csdnimg.cn/release/static/image/mid/ask/358820752836186.png "#left")
问题相关代码,请勿粘贴截图
#include <stdio.h>
#include <string.h>
int oneresult[10];
//int results[100][10];
int num = 0;
//int results_num = 0;
void combine(int n, int k, int startindex){
if (num == k)
{
for (int i = 0; i < k; i++)
{
if (oneresult[i]) printf("%d",oneresult[i]);
}
printf("\n");
return;
}
for (int i = startindex; i < n; i++)
{
oneresult[num++] = i+1;
combine(n,k,startindex+1);
oneresult[num--] = 0;
}
}
int main()
{
int n,k;
//memset(results,0,sizeof(results));
memset(oneresult,0,sizeof(oneresult));
scanf("%d %d",&n,&k);
combine(n,k,0);
//for (int i = 0; i < 100; i++)
//{
// for (int j = 0; j < 10; j++)
// {
// if (results[i][j]) printf("%d",results[i][j]);
// }
// printf("\n");
//}
system("pause");
return 0;
}