c语言中的数组覆盖,[求助] 怎么得到被覆盖的数组?
[求助] 怎么得到被覆蓋的數組?
#include
#ifndef MAXN
#define MAXN 100
#endif
//int n = 5, r = 3;/* P(n,r) */
//int n, r;
int used[MAXN]; /* 待排列數據使用標記 */
int p[MAXN]; /* 解空間 - 保存每次形成的排列結果 */
int data[MAXN]; /* 待排列組合的數據空間 */
int a[100];
void permute(int pos, int r, int n) /* pos是用來標記位置的 */
{
for (int j=0; j
{
data[j]=j;
}
int i = 0;
if (pos != r)
{
for (i=0; i
{
if (!used[i])
{
used[i]++;
p[pos] =data[i];
permute(pos+1,r,n);
used[i]--;
}
}
}
else//if (pos == r)
{
for (i=0;i
if (p[0]==0)
printf("%d, ",p[i]);
printf("\n");
return;
}
}
void main( )
{
permute(0,3,5);
}
這是一個全排列的問題 小弟不知道如何在此程序里面得到輸出結果中的一個
因為輸出的結果 總是后一個數組覆蓋前面的一個數組
應該是可以用指針實現 可是小弟指針不太懂! 拜托各位了!
急!
[此貼子已經被作者于2006-5-11 15:47:42編輯過]
總結
以上是生活随笔為你收集整理的c语言中的数组覆盖,[求助] 怎么得到被覆盖的数组?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cfree是c语言程序的什么,用C-FR
- 下一篇: gpt分区无法安装系统怎么办 gpt分区