Durante a elaboração de programas em linguagem C, muitas vezes é necessário que uma ou um conjunto de instruções sejam repetidos algumas vezes para a realização de algum processamento necessário. Observe o trecho de código a seguir, identifique e interprete erros.
for ( i = 1; i <= 0; i++) {
printf ("\n %c", i);
}
Agora analise as afirmativas a seguir sobre o conteúdo citado.
I – Esta estrutura de repetição irá exibir os valores de 1 a 10 pelo uso da função “printf ()”.
II – O uso do parâmetro “%c” dentro da função “printf ()” é indicada para valores numéricos.
III – Esta estrutura de repetição não exibe resultado algum ao usuário.
É correto o que se afirma em.
Alternativa 1:
I, apenas.
Alternativa 2:
II, apenas.
Alternativa 3:
III, apenas.
Alternativa 4:
I e II, apenas.
Alternativa 5:
II e III, apenas.
Soluções para a tarefa
Resposta:
Alternativa 3: III, apenas.
Explicação:
A condição para que ocorra o comando printf é que o valor de i seja menor ou igual a zero. Outro detalhe para notarmos é que o comando printf quando associado com "%c", fará a impressão de caracteres.
O que nos leva a concuir que a afirmativa I está errada, pois não haverá nenhuma impressão, pois i é iniciado com o valor 1, já não satisfazendo a condição para acontecer o comando (Que deve ser menor ou igual a zero). Note que para que seja repetido o comando printf 10 vezes, como sugerido na afirmativa, o sinal de menor deve ser trocado pelo maior, ficando i >=. Ou podemos colocar i <= 10.
Para a afirmativa II, temos um erro também pois para valores numéricos é utilizado "%d", "%lf", "%f"... o parâmetro "%c" mostra caracteres.
E para a afirmativa III, que nos diz que não é exibido resultado está correta, pois mesmo que atendesse as condições da estrutura de repetição, o parâmetro inserido na variável a ser impressa i é um valor numérico.