Operadores aritméticos
Os operadores aritméticos são usados para calcular expressões matemáticas. Sendo classificados em duas categorias: os binários ou unários. Os operadores unários atuam na inversão de valores.
Exemplo de uso:
main(){
int n=5;
int b;
int l2;
n=n*3;//n passou a ser 15
b=n/3;//b pega o resultado da divisão
l2=n%3;//pega o resto da divisão por 3
printf("%d\n",n+5);//imprimi 20, pois aqui só foi acrescenta +5 para exibir
printf("%d\n",n);//imprimi 5
printf("%d\n",l2);//imprimi zero pois esse foi o resto
printf("%d",b);//imprimi 5
}
Operadores de incremento e decremento
O operador de incremento (++) soma 1 ao seu operando enquanto que o de decremento (--) subtrai um. Eles podem ser pré-fixados ou pós-fixados conforme mostra a tabela abaixo:
Exemplo programa:
int main()
{
int cont=0;
do{
printf("%d\n",cont);//imprimi 0,depois 1 e assim sucessivamente até 9
cont++;
}while(cont<10);//quando contador chegar em 10 ele para;
//o cont ficou iqual 9
//esse do e o while será visto nos próximos assuntos de estruturas de repetição
cont=10;
do{
cont--;
printf("%d\n",cont);// a mesma lógica só que agora come de 10 e vai até zero
}while(cont!=0);
//o cont ficou igual a zero
}
Operadores aritméticos de atribuições
Var= var operador + expressão
Var operador= expressão
Exemplo programa:
main(){
int n=5;
int b;
int l2;
n=n*3;//n passou a ser 15
b=n/3;//b pega o resultado da divisão
l2=n%3;//pega o resto da divisão por 3
printf("%d\n",n+5);//imprimi 20, pois aqui só foi acrescenta +5 para exibir
printf("%d\n",n);//imprimi 5
printf("%d\n",l2);//imprimi zero pois esse foi o resto
printf("%d",b);//imprimi 5
}
Operadores relacionais
Esses operadores são responsáveis pelas comparações de expressões nos programas. A lista completa se encontra abaixo:
main(){
int n;
n=5;
if(n==5){//verifica se a variável n é igual 5
printf("true\n");
}
else{
printf("false\n");
}
if(n<2){//verifica se a variável n é menor que 2
printf("true\n");
}
else{
printf("false\n");
}
if(n>5){//verifica se a variável e maior que 5
printf("true\n");
}
else{
printf("false\n");
}
if(n!=4){//verifica se a variável é diferente de
printf("true\n");
}
else{
printf("false\n");
}
}
Operadores lógicos
Os operados lógicos servem para interligar mais de uma operação relacional. E assim como os relacionais retornam zero para falso e um para verdadeiro.main(){
int n;
n=5;
if(n==5 && n<2){//verifica se a variável n é igual 5 e também é menor que 2
printf("true\n");
}
else{
printf("false\n");//imprimi esse
}
if(n==5 || n<2){//verifica se a variável n é igual 5 ou também é menor que 2
printf("true\n");//imprimi esse
}
else{
printf("false\n");
}
}
Operadores bit a bit
Como já sabemos a linguagem C é considerada de baixo nível, pois permite a manipulação de bits. Isto é feito através dos operadores bit a bit listados a seguir.Operador Cast
Tem como função forçar para que uma expressão seja de um determinado tipo. Sua sintaxe é:(tipo de dado) expressão
O tipo de dado pode ser qualquer um dos definidos pelo padrão ANSI. Um exemplo da utilização deste operador pode ser visto no programa mostrado neste artigo para exemplificar o uso dos operadores aritméticos. Nesse programa o operador cast é usado para forçar a divisão de dois números inteiros ser do tipo float.
Exemplo:
main()
{
int n=2;
float b;
b=(int)n;
}
Operador Sizeof
Este operador é usado em tempo de execução e tem como objetivo retornar o tamanho em bytes da variável.
Saída do programa:
A variavel x do tipo float tem o tamanho=4 bytes
A variavel y do tipo double tem o tamanho=8 bytes
A variavel z do tipo char tem o tamanho=1 bytes
Precedências
Precedência é a prioridade com que os operadores são executados pelo compilador. Caso os operadores tenham o mesmo nível de precedência eles são analisados da esquerda para direita.- Prioridade alta
- Multiplipar *
- Dividir /
main(){
int n=1;
n= n*3+1;//multiplica primeira
}
- Prioridade baixa
- Somar +
- Subtrair -
A precedência dos operadores pode ser mudada utilizando parentes. Para entender melhor veja o exemplo abaixo, onde as duas expressões são iguais, porém o uso de um parêntese fez mudar a precedência obtendo assim resultados diferentes.
Ex:
main()
{
int n=(2+1)/3;
}
Fonte:
- (Adaptado)http://www.juliobattisti.com.br/tutoriais/katiaduarte/cbasico002.asp
- http://www.mspc.eng.br/info/cpp_oper_10.shtml







Nenhum comentário:
Postar um comentário