de barra invertida do C como sendo \0. Emborao assunto vetores seja discutido posteriormente, veremos aqui os fundamentos necessariospara que possamos utilizar as strings. Para declarar uma string, podemos usar o seguinteformato geral:char nome_da_string[tamanho];Isto declara um vetor de caracteres (uma string) com numero de posicoes igual atamanho. Note que, como temos que reservar um caractere para ser o terminador nulo, temosque declarar o comprimento da string como sendo, no minimo, um caractere maior que amaior string que pretendemos armazenar. Vamos supor que declaremos uma string de 7posicoes e coloquemos a palavra Joao nela. Teremos:J o a o \0 ... ...No caso acima, as duas celulas nao usadas tem valores indeterminados. Isto aconteceporque o C nao inicializa variaveis, cabendo ao programador esta tarefa. Portanto as unicascelulas que sao inicializadas sao as que contem os caracteres J, o, a, o e \0 .Se quisermos ler uma string fornecida pelo usuario podemos usar a funcao gets(). Umexemplo do uso desta funcao e apresentado abaixo. A funcao gets() coloca o terminador nulona string, quando voce aperta a tecla "Enter".#include <stdio.h>int main (){char string[100];printf ("Digite uma string: ");gets (string);printf ("\n\nVoce digitou %s",string);return(0);}Neste programa, o tamanho maximo da string que voce pode entrar e uma string de 99caracteres. Se voce entrar com uma string de comprimento maior, o programa ira aceitar, masos resultados podem ser desastrosos. Veremos porque posteriormente.Como as strings sao vetores de caracteres, para se acessar um determinado caracter deuma string, basta "indexarmos", ou seja, usarmos um indice para acessarmos o caracterdesejado dentro da string. Suponha uma string chamada str. Podemos acessar a segundaletra de str da seguinte forma:str[1] = a;8Por que se esta acessando a segunda letra e nao a primeira? Na linguagem C, o indicecomeca em zero. Assim, a primeira letra da string sempre estara na posicao 0. A segundaletra sempre estara na posicao 1 e assim sucessivamente. Segue um exemplo que imprimira asegunda letra da string "Joao", apresentada acima. Em seguida, ele mudara esta letra eapresentara a string no final.#include <stdio.h>int main(){char str[10] = "Joao";printf("\n\nString: %s", str);printf("\nSegunda letra: %c", str[1]);str[1] = U;printf("\nAgora a segunda letra eh: %c", str[1]);printf("\n\nString resultante: %s", str);return(0);}Nesta string, o terminador nulo esta na posicao 4. Das posicoes 0 a 4, sabemos quetemos caracteres validos, e portanto podemos escreve-los. Note a forma como inicializamos astring str com os caracteres J o a o e \0 simplesmente declarando char str[10] = "Joao".Veremos, posteriormente que "Joao" (uma cadeia de caracteres entre aspas) e o quechamamos de string constante, isto e, uma cadeia de caracteres que esta pre-carregada comvalores que nao podem ser modificados. Ja a string str e uma string variavel, pois podemosmodificar o que nela esta armazenado, como de fato fizemos.No programa acima, %s indica que printf() deve colocar uma string na tela. Vamosagora fazer uma abordagem inicial as duas funcoes que ja temos usado para fazer a entrada esaida.printfA funcao printf() tem a seguinte forma geral:printf (string_de_controle,lista_de_argumentos);Teremos, na string de controle, uma descricao de tudo que a funcao vai colocar na tela. Astring de controle mostra nao apenas os caracteres que devem ser colocados na tela, mastambem quais as variaveis