ano. Peca osnumeros ate conseguir valores que estejam na faixa correta (dias entre 1 e 31, mes entre 1 e12 e ano entre 1900 e 2100). Verifique se o mes e o numero de dias batem (incluindoverificacao de anos bissextos). Se estiver tudo certo imprima o numero que aquele diacorresponde no ano. Comente seu programa.PS: Um ano e bissexto se for divisivel por 4 e nao for divisivel por 100, exceto para osanos divisiveis por 400, que tambem sao bissextos.34Capitulo . 4 (MATRIZES E STRINGS)VetoresVetores nada mais sao que matrizes unidimensionais. Vetores sao uma estrutura dedados muito utilizada. E importante notar que vetores, matrizes bidimensionais e matrizes dequalquer dimensao sao caracterizadas por terem todos os elementos pertencentes ao mesmotipo de dado. Para se declarar um vetor podemos utilizar a seguinte forma geral:tipo_da_variavel nome_da_variavel [tamanho];Quando o C ve uma declaracao como esta ele reserva um espaco na memoriasuficientemente grande para armazenar o numero de celulas especificadas em tamanho. Porexemplo, se declararmos:float exemplo [20];o C ira reservar 4x20=80 bytes. Estes bytes sao reservados de maneira contigua. Nalinguagem C a numeracao comeca sempre em zero. Isto significa que, no exemplo acima, osdados serao indexados de 0 a 19. Para acessa-los vamos escrever:exemplo[0]exemplo[1]...exemplo[19]Mas ninguem o impede de escrever:exemplo[30]exemplo[103]Por que? Porque o C nao verifica se o indice que voce usou esta dentro dos limitesvalidos. Este e um cuidado que voce deve tomar. Se o programador nao tiver atencao com oslimites de validade para os indices ele corre o risco de ter variaveis sobreescritas ou de ver ocomputador travar. Bugs terriveis podem surgir. Vamos ver agora um exemplo de utilizacao devetores:35#include <stdio.h>int main (){int num[100]; /* Declara um vetor de inteiros de 100 posicoes */int count=0;int totalnums;do{printf ("\nEntre com um numero (-999 p/ terminar): ");scanf ("%d",&num[count]);count++;} while (num[count-1]!=-999);totalnums=count-1;printf ("\n\n\n\t Os numeros que voce digitou foram:\n\n");for (count=0;count<totalnums;count++)printf (" %d",num[count]);return(0);}No exemplo acima, o inteiro count e inicializado em 0. O programa pede pela entrada denumeros ate que o usuario entre com o Flag -999. Os numeros sao armazenados no vetornum. A cada numero armazenado, o contador do vetor e incrementado para na proximaiteracao escrever na proxima posicao do vetor. Quando o usuario digita o flag, o programaabandona o primeiro loop e armazena o total de numeros gravados. Por fim, todos os numerossao impressos. E bom lembrar aqui que nenhuma restricao e feita quanto a quantidade denumeros digitados. Se o usuario digitar mais de 100 numeros, o programa tentara lernormalmente, mas o programa os escrevera em uma parte nao alocada de memoria, pois oespaco alocado foi para somente 100 inteiros. Isto pode resultar nos mais variados erros noinstante da execucao do programa.AUTO AVALIACAOVeja como voce esta.Reescreva o exemplo acima, realizando a cada leitura um teste para ver se a dimensaodo vetor nao foi ultrapassada. Caso o usuario entre com 100 numeros, o programa deveraabortar o loop de leitura automaticamente. O uso do Flag (-999) nao deve ser retirado.StringsStrings sao vetores de chars. Nada mais e nada menos. As strings sao o uso maiscomum para os vetores. Devemos apenas ficar atentos para o fato de que as strings tem o seuultimo