
if (condição) declaração;
A condição do comando if é uma expressão que será avaliada. Se o resultado for zero a declaração não será executada. Se o resultado for qualquer coisa diferente de zero a declaração será executada. A declaração pode ser um bloco de código ou apenas um comando. É interessante notar que, no caso da declaração ser um bloco de código, não é necessário (e nem permitido) o uso do ; no final do bloco. Isto é uma regra geral para blocos de código. Abaixo apresentamos um exemplo:
#include <stdio.h>
main ()
{
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
if (num>10) printf ("\n\nO numero e maior que 10");
if (num==10)
{
printf ("\n\nVoce acertou!\n");
printf ("O numero e igual a 10.");
}
if (num<10) printf ("\n\nO numero e menor que 10");
}
No programa acima a expressão num>10 é avaliada e
retorna um valor diferente de zero, se verdadeira, e zero, se falsa. Repare
que quando queremos testar igualdades usamos o operador == e não
=. Isto é porque o operador = representa apenas
uma atribuição. Isto pode parecer estranho à primeira
vista, mas se escrevêssemos
if (num=10) ... /* Isto esta errado */o compilador iria atribuir o valor 10 à variável num e a expressão num=10 iria retornar 10, fazendo com que o nosso valor de num fosse adulterado e fazendo com que a declaração fosse executada sempre. Este problema gera erros frequentes entre iniciantes e, portanto, muita atenção deve ser tomada.
Os operadores de comparação são: ==, >, <, >= , <= .
for (inicialização;condição;incremento) declaração;
A declaração no comando for também pode ser um bloco ({ } ) e neste caso o ; é omitido. O melhor modo de se entender o loop for é ver de que maneira ele funciona "por dentro". O loop for é equivalente a se fazer o seguinte:
#include <stdio.h>
main ()
{
int count;
for (count=1;count<=100;count=count+1) printf ("%d ",count);
}
Veja como você está.
if (num=10) ...O que irá acontecer?
Perguntas para a lista do
Curso de C