#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <stdbool.h>
#define LEN 10
void print_array(int arr[]);
int main(void)
{
int numbers[LEN] = { 1 };
int r;
bool dup;
srand((unsigned)time(NULL));
for (int i = 0; i < sizeof(numbers)/sizeof(numbers[0]); i++)
{
r = rand() % (10) + 1; // between 1 - 10
for (int j = 0; j < sizeof(numbers)/sizeof(numbers[0]); j++)
{
if (numbers[j] != r)
dup = false;
else
{
dup = true;
break;
}
}
if (dup == false)
numbers[i] = r;
else
i--; // start again and generate new number, instead the duplicate
}
print_array(numbers);
return 0;
}
void print_array(int arr[])
{
for (int i = 0; i < LEN; i++)
printf("%3d ", arr[i]);
}
/*
run:
4 9 5 6 2 10 3 8 1 7
*/