19-08-2009, 21:02
|
|
|
|
חבר מתאריך: 19.08.09
הודעות: 36
|
|
תודה, עובד כמו גדול ... אפשר לבקש עוד טובה ?
איך אפשר לדחוף את את המשתנים לפונקייה הזאת ?
יעני במקום זה ה int v יהיה משתנה שבא לי ? כמו {1,2,3,4,5} או משהו אחר
קוד:
int v[] = {0,3,6,9,5,8,1};
קוד:
#include <stdio.h>
#include <stdlib.h>
void print(const int *v, const int size)
{
if (v != 0) {
for (int i = 0; i < size; i++) {
printf("%d", v[i] );
}
printf("\n");
}
}
void permute(int *v, const int start, const int n)
{
if (start == n-1) {
print(v, n);
}
else {
for (int i = start; i < n; i++) {
int tmp = v[i];
v[i] = v[start];
v[start] = tmp;
permute(v, start+1, n);
v[start] = v[i];
v[i] = tmp;
}
}
}
main(int argc, char *argv[])
{
int v[] = {0,3,6,9,5,8,1};
permute(v, 0, sizeof(v)/sizeof(int));
}
|