Se vuoi essere più ordinato ed evitare il secondo ciclo...
codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
void funzione(int);
bool check(int v, int *a, int l);
int main() {
int A[17];
int i;
srand(time(0));
for(i=0;i<17;i++) {
A[i] = rand() % 17 + 1;
if(check(A[i], A, i)) {
i--;
continue;
}
funzione(A[i]);
}
return 0;
}
void funzione(int a) {
printf("funzione: %d\n", a);
}
bool check(int v, int *a, int l) {
int i;
for (i=0;i<l;i++)
if (v == a[i])
return true;
return false;
}
In alternativa puoi anche usare un goto, ma dato che hai già problemi con queste strutture te lo sconsiglio vivamente.