uma string: ");gets (str1);printf ("\n\nEntre com outra string: ");gets (str2);if (strcmp(str1,str2))printf ("\n\nAs duas strings sao diferentes.");else printf ("\n\nAs duas strings sao iguais.");return(0);}AUTO AVALIACAOVeja como voce esta.Faca um programa que leia quatro palavras pelo teclado, e armazene cada palavra emuma string. Depois, concatene todas as strings lidas numa unica string. Por fim apresente estacomo resultado ao final do programa.Matrizes39Matrizes bidimensionaisJa vimos como declarar matrizes unidimensionais (vetores). Vamos tratar agora dematrizes bidimensionais. A forma geral da declaracao de uma matriz bidimensional e muitoparecida com a declaracao de um vetor:tipo_da_variavel nome_da_variavel [altura][largura];E muito importante ressaltar que, nesta estrutura, o indice da esquerda indexa as linhase o da direita indexa as colunas. Quando vamos preencher ou ler uma matriz no C o indicemais a direita varia mais rapidamente que o indice a esquerda. Mais uma vez e bom lembrarque, na linguagem C, os indices variam de zero ao valor declarado, menos um; mas o C naovai verificar isto para o usuario. Manter os indices na faixa permitida e tarefa do programador.Abaixo damos um exemplo do uso de uma matriz:#include <stdio.h>int main (){int mtrx [20][10];int i,j,count;count=1;for (i=0;i<20;i++)for (j=0;j<10;j++){mtrx[i][j]=count;count++;}return(0);}No exemplo acima, a matriz mtrx e preenchida, sequencialmente por linhas, com osnumeros de 1 a 200. Voce deve entender o funcionamento do programa acima antes deprosseguir.Matrizes de stringsMatrizes de strings sao matrizes bidimensionais. Imagine uma string. Ela e um vetor. Sefizermos um vetor de strings estaremos fazendo uma lista de vetores. Esta estrutura e umamatriz bidimensional de chars. Podemos ver a forma geral de uma matriz de strings comosendo:char nome_da_variavel [num_de_strings][compr_das_strings];Ai surge a pergunta: como acessar uma string individual? Facil. E so usar apenas oprimeiro indice. Entao, para acessar uma determinada string faca:nome_da_variavel [indice]Aqui esta um exemplo de um programa que le 5 strings e as exibe na tela:#include <stdio.h>int main ()40{char strings [5][100];int count;for (count=0;count<5;count++){printf ("\n\nDigite uma string: ");gets (strings[count]);}printf ("\n\n\nAs strings que voce digitou foram:\n\n");for (count=0;count<5;count++)printf ("%s\n",strings[count]);return(0);}Matrizes multidimensionaisO uso de matrizes multidimensionais na linguagem C e simples. Sua forma geral e:tipo_da_variavel nome_da_variavel [tam1][tam2] ... [tamN];Uma matriz N-dimensional funciona basicamente como outros tipos de matrizes. Bastalembrar que o indice que varia mais rapidamente e o indice mais a direita.InicializacaoPodemos inicializar matrizes, assim como podemos inicializar variaveis. A forma geral deuma matriz como inicializacao e:tipo_da_variavel nome_da_variavel [tam1][tam2] ... [tamN] = {lista_de_valores};A lista de valores e composta por valores (do mesmo tipo da variavel) separados porvirgula. Os valores devem ser dados na ordem em que serao colocados na matriz. Abaixovemos alguns exemplos de inicializacoes de matrizes:float vect [6] = { 1.3, 4.5, 2.7, 4.1, 0.0, 100.1 };int matrx [3][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };char str [10] = { J, o, a, o, \0 };char str [10] = "Joao";char str_vect [3][10] = { "Joao", "Maria", "Jose" };O primeiro demonstra inicializacao de vetores. O segundo exemplo demonstra ainicializacao de matrizes multidimensionais, onde matrx esta sendo inicializada com 1, 2, 3 e 4em sua primeira linha, 5, 6, 7 e 8 na segunda linha e 9, 10, 11 e 12 na ultima linha. Noterceiro exemplo vemos como inicializar uma string e, no quarto