Criar um arquivo em C com 12 linhas e cada linha com uma identificação para signos

Boa tarde!

Peço desculpas pela ignorância, mas infelizmente C não é minha linguagem dominante, e estou com o seguinte problema para resolver:

  • Criar um arquivo de nome “horoscopo.txt” que deverá ser aberto com a opção “w”.

  • Cada frase deverá ter no máximo 100 caracteres.

  • O programa deverá controlar esse tamanho, não deixando gravar frases maiores que 100 caracteres.

  • O programa deverá acrescentar uma identificação numérica em cada frase, variando de 11 a 22, começando pelo signo de capricórnio, conforme exemplo a seguir:

11cccccccccccccccccccc…ccccccccccccccccccccccccccc //capricórnio

12aaaaaaaaaaaaaaaaaaaa…aaaaaaaaaaaaaaaaaaaaa //aquario

13ppppppppppppppppppp…pppppppppppppppppppp //peixes

c, a e p representam respectivamente as frases que devem ser escritas para os signos de capricórnio, aquário e peixes.

  • Criar uma estrutura com um campo numérico para as duas posições iniciais e um campo caractere para as 100 posições da frase.

➔ CUIDADO COM O TAMANHO DO CAMPO int PORQUE O NÚMERO DE BYTES DO CAMPO PODE VARIAR DE COMPUTADOR PARA COMPUTADOR.

➔ NÃO ESQUECER DE ACRESCENTAR OS BYTES DE CONTROLE.

  • Criar um array numérico inteiro para identificar os 12 signos (11, 12, 13, …, 20, 21, 22).

  • Criar um array caractere para descrever cada signo e o respectivo período do ano (CAPRICORNIO - 22/12 a 19/01, AQUARIO - 20/01 a 18/02, PEIXES - 19/02 a 20/03, …, LIBRA - 23/09 A 22/10, ESCORPIAO - 23/10 A 21/11, SAGITARIO - 22/11 A 21/12.

  • Gravar a frase.

  • Após ser incluída a última frase, o programa deverá fechar o arquivo.

Até o momento consegui apenas fazer isso:

#include <stdio.h>
#include <strings.h>
#define TAMMAX 100

int main(){
char escreva[12];

FILE *arquivo;

// w para criar arquivo
// se o arquivo já existir, o w faz com que seja criado um novo
arquivo = fopen("horoscopo.txt","w");

printf("O arquivo foi criado!");


arquivo = fopen("horoscopo.txt","w");
printf("\n");
printf("Escreva algo: ");

scanf("%[^\n]", &escreva);
//fgets(escreva, TAMMAX, stdin);
fputs(escreva, arquivo);


fclose(arquivo);

return 0;

}