Code:
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
int main(void) {
char letters[7];
char tiles[] = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','\0'};
char tilesArray[98];
int distribution[] ={9,2,2,4,12,2,3,2,9,1,1,4,2,6,8,2,1,6,4,6,4,2,2,1,2,1,0};
int num;
int i, j, k = 0;
srand(time(NULL));
while (i < 98) //loop seeds tilesArray[] with tiles[] with a frequency based on numbers in distribution[]
{
while (distribution[j] != 0)
{
tilesArray[i] = tiles[j];
printf ("%s\n", tilesArray[i]);
distribution[j]--;
i++;
}
j++;
}
while (k < 7) //randomly assign seven letters to letter[], NULL'ing each choice after it is picked.
{
num = rand()%97;
if (tilesArray[num] != '\0')
{
letters[k] = tilesArray[num];
printf ("%s\n", letters[k]);
tilesArray[num] = '\0';
k++;
}
}
return 0;
}