Tu programa tiene varios errores como utilizar bucles:
for (i=0;i<=10;i++)
Que iteran once veces, no diez. La condición debes cambiarla a "i < 10".
Otros dos son las expresiones "rand() % 1" ya que siempre resultara en cero y "rand() % 100 < 10" que resultara en 1 o 0 dependiendo del residuo de la división.
----
La forma mas fácil es con un array de arrays de caracteres para implementar la matriz, la base es:
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
FILE *salida;
char mat[10][10];
int i;
int j;
/* ... */
return 0;
}
A continuación los pasos que se deben realizar son:
1) Almacenas en todos los elementos de la matriz el carácter '0'. Eso lo realizas con dos bucles anidados cada uno iterando diez veces.
2) Un bucle que itere diez veces, la fila y columna se generan de forma aleatoria con "rand() % 10" para colocar ahí un '1'. Se debe verificar (mediante un bucle anidado) que la celda no contenga un '1'.
3) Se genera la fila y columna de forma aleatoria para el carácter 'A'. Utilizas un bucle para verificar que ahí no se encuentre un '1'.
4) Ya con todos los valores en la matriz abres el archivo, envías todos los datos (dos bucles anidados) y cierras el archivo.
En términos generales eso es todo.
Un saludo