The problem is that I have two different arrays but return elements are the same. This is basic question, but I am banging my head for two hours. I use srand function so that is not the problem, at least I think so.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void swap(int *a, int *b);
int* napraviNiz(int n);
void stampajNiz(int niz[], int n);
void trazi(int niz1[], int niz2[], int n);
int main(int argc, char *argv[])
{
int n = 8;
srand(time(NULL));
int* niz1 = napraviNiz(n);
int* niz2 = napraviNiz(n);
// Stampaj niz
stampajNiz(niz1, n);
stampajNiz(niz2, n);
system("PAUSE");
return 0;
}
void swap(int *a, int *b)
{
int c = *a;
*a = *b;
*b = c;
}
void stampajNiz(int niz[], int n)
{
int i;
for(i = 0; i < n; i++)
{
printf("%d ", niz[i]);
}
printf("\n");
}
int* napraviNiz(int n)
{
int i;
int *niz = (int)malloc(n*sizeof(int));
/* Intializes random number generator */
for (i = 0; i < n; i++)
{
niz[i] = rand()%n; //uzima random indeks od 1 do i
}
return niz;
}
Output:
3 3 2 5 7 9 1 2
3 3 2 5 7 9 1 2