<stdio.h>int main (){long int i;printf("\a"); /* Imprime o caracter de alerta (um beep) */for (i=0; i<10000000; i++); /* Espera 10.000.000 de iteracoes */printf("\a"); /* Imprime outro caracter de alerta */29return(0);}faz isto.AUTO AVALIACAOVeja como voce esta.Faca um programa que inverta uma string: leia a string com gets e armazene-a invertidaem outra string. Use o comando for para varrer a string ate o seu final.O Comando whileO comando while tem a seguinte forma geral:while (condicao) declaracao;Assim como fizemos para o comando for, vamos tentar mostrar como o while funcionafazendo uma analogia. Entao o while seria equivalente a:if (condicao){declaracao;"Volte para o comando if"}Podemos ver que a estrutura while testa uma condicao. Se esta for verdadeira adeclaracao e executada e faz-se o teste novamente, e assim por diante. Assim como no casodo for, podemos fazer um loop infinito. Para tanto basta colocar uma expressao eternamenteverdadeira na condicao. Pode-se tambem omitir a declaracao e fazer um loop sem conteudo.Vamos ver um exemplo do uso do while. O programa abaixo e executado enquanto i formenor que 100. Veja que ele seria implementado mais naturalmente com um for ...#include <stdio.h>int main (){int i = 0;while ( i < 100){printf(" %d", i);i++;}return(0);}O programa abaixo espera o usuario digitar a tecla q e so depois finaliza:#include <stdio.h>int main (){char Ch;Ch=\0;while (Ch!=q){Ch = getch();}return(0);}30AUTO AVALIACAOVeja como voce esta:Refaca o programa da pagina anterior. Use o comando while para fechar o loop.O Comando do-whileA terceira estrutura de repeticao que veremos e o do-while de forma geral:do{declaracao;} while (condicao);Mesmo que a declaracao seja apenas um comando e uma boa pratica deixar as chaves. Oponto-e- virgula final e obrigatorio. Vamos, como anteriormente, ver o funcionamento daestrutura do-while "por dentro":declaracao;if (condicao) "Volta para a declaracao"Vemos pela analise do bloco acima que a estrutura do-while executa a declaracao, testa acondicao e, se esta for verdadeira, volta para a declaracao. A grande novidade no comando dowhilee que ele, ao contrario do for e do while, garante que a declaracao sera executada pelomenos uma vez.Um dos usos da extrutura do-while e em menus, nos quais voce quer garantir que o valordigitado pelo usuario seja valido, conforme apresentado abaixo:#include <stdio.h>int main (){int i;do{printf ("\n\nEscolha a fruta pelo numero:\n\n");printf ("\t(1)...Mamao\n");printf ("\t(2)...Abacaxi\n");printf ("\t(3)...Laranja\n\n");scanf("%d", &i);} while ((i<1)||(i>3));switch (i){case 1:printf ("\t\tVoce escolheu Mamao.\n");break;case 2:printf ("\t\tVoce escolheu Abacaxi.\n");break;case 3:printf ("\t\tVoce escolheu Laranja.\n");break;}return(0);}31AUTO AVALIACAOVeja como voce esta.Refaca o exercicio da pagina 26 utilizando o laco do-while para controlar o fluxo.O Comando breakNos ja vimos dois usos para o comando break: interrompendo os comandos switch efor. Na verdade, estes sao os dois usos do comando break: ele pode quebrar a execucao deum comando (como no caso do switch) ou interromper a execucao de qualquer loop (como nocaso do for, do while ou do do while). O break faz com que a execucao do programacontinue na primeira linha seguinte ao loop ou bloco que esta sendo interrompido.Observe que um break causara uma saida somente do laco mais interno. Por exemplo:for(t=0; t<100; ++t){count=1;for(;;){printf("%d", count);count++;if(count==10) break;}}O codigo acima imprimira os numeros de 1 a 10 cem vezes na tela. Toda vez que o breake encontrado, o controle e devolvido para