I did write an example. It can be done better, but it'll work.
Code:
#include <stdlib.h>
#include <stdio.h>
#define LENGTH 8
#define WIDTH 8
static const char grid_chars[] = {'!', '@', '#', '$', '&'};
static const int num_grid_chars = sizeof grid_chars / sizeof grid_chars[0];
char random_grid_char(void)
{
return grid_chars[rand() % num_grid_chars];
}
void makegrid(char *grid)
{
int j;
int k;
for (j = 0; j < LENGTH; j++)
{
for (k = 0; k < WIDTH; k++)
{
grid[j * LENGTH + k] = random_grid_char();
}
}
}
void printgrid(char *grid)
{
int j;
int k;
for (j = 0; j < LENGTH; j++)
{
for (k = 0; k < WIDTH; k++)
{
printf("%c", grid[j * LENGTH + k]);
}
printf("\n");
}
}
int main(void)
{
char grid[WIDTH * LENGTH];
makegrid(grid);
printgrid(grid);
return 0;
}