03 Alg Prog C
03 Alg Prog C
03 Alg Prog C
1
Definição de Variáveis
■ Devem ser declaradas no início do programa ou do sub
bloco;
■ Podem ser classificadas como Locais ou Globais.
■ Locais
■ Declaradas dentro de funções;
■ Utilizada apenas dentro do escopo da função;
■ O escopo de uma função é determinado por abre-
chaves “{“ e termina em fecha-chaves “}”;
■ Só existem no momento que sua função está em
execução.
■ Globais
■ Declaradas fora de todas as funções;
■ Podem ser acessadas de qualquer parte do programa;
■ Existem durante toda a execução do programa.
2
Nomes de Variáveis
■ Deve conter um ou mais caracteres;
■ O primeiro caractere sempre deve ser uma letra;
■ Os caracteres subseqüentes podem ser letras,
números ou “_”;
■ Não pode ser igual às palavras-chaves;
■ Não pode ter o mesmo nome de funções;
Correto Incorreto
Soma1 1soma
Soma soma!
area_triangulo area...triangulo
Obs: as variáveis “soma” e “Soma” são distintas
3
Declarando variáveis
Sintaxe
■ <Tipo de dados> Nome_variável;
Ex:
char nome;
int idade;
int total;
Atribuindo valor
■ Nome_da_variavel = expressão;
Ex:
nome = ‘Joao’ ;
idade = 18; Isto é importante pois quando o C cria uma
total = 10 + 20; variável ele não a inicializa. Isto significa que
até que um primeiro valor seja atribuído à nova
variável ela tem um valor indefinido e que não
pode ser utilizado para nada. Nunca presuma
que uma variável declarada vale zero ou
qualquer outro valor.
4
Operadores aritméticos
= Atribuição
+ Soma
- Subtração
/ Divisão
% Módulo (resto da divisão)
5
Operadores aritméticos Unários e Binários
■ Unários (+, -, ++, --) agem sobre uma variável apenas,
modificando ou não o seu valor, e retornam o valor final
da variável.
■ a = -b;
■ a++; (ou seja) a = a+1;
■ a--; (ou seja) a = a-1;
6
Operadores aritméticos - Hierarquia
7
Operadores de Atribuição
=, +=, -=, *=, /=, %=
Instrução normal Instrução reduzida
■ Exemplos:
■ a = 5;
■ a += 5; (ou seja) a = (a + 5);
■ a -= 5; (ou seja) a = (a – 5);
8
Linguagem C – Operadores Relacionais
Linguagem C – Operadores Lógicos
Operador Ação
&& E
|| OU
! Não
Tabela Verdade
Não p Não q pEq p OU q
p q !p !q p && q p || q
falso falso verdadeiro verdadeiro falso falso
11
Tipos Primitivos
Void
■ Tipo de dado sem valor.
Caractere
■ Definido pela palavra reservada char;
■ Ocupa 8 bits (1 byte)
■ Faixa de valores: -128 à 127 (ASCII)
■ Exemplo:
■ char letra;
■ letra = ‘A’;
12
Tipos Primitivos
Inteiro
■ Definido pela palavra reservada int;
■ Ocupa 16 bits (2 bytes)
■ Faixa de valores: -32768 à 32767
■ Exemplo:
■ int num;
■ num = -73;
13
Tipos Primitivos
Ponto flutuante
■ Definido pela palavra reservada float
■ Ocupa 4 bytes
■ Exemplo:
■ float a,b,c=2.34;
16
Conversão de Tipos - Explícita (cast)
Exemplo:
int numero;
char letra;
numero = 555;
letra = 'w';
numero = (int) letra; //O tipo maior recebe o tipo menor
17
Hierarquia dos Operadores Relacionais e Lógicos
18
Funções de Entrada e Saída Formatada
#include <stdio.h>
io → input/output
19
Funções de Entrada e Saída Formatada
Tabela de códigos de formato (%)
20
Funções de Entrada e Saída Formatada
Exemplos:
■ printf (“%d”, Y); //Mostra o nº inteiro armazenado em Y.
■ printf(“Conteúdo de Y = %d”, Y); //mostra a mensagem
Conteúdo de Y = e seguida o nº inteiro armazenado em Y.
■ printf (“%f”, X); //Mostra o nº real armazenado em X.
■ printf (“%5.2f”, X); //Mostra o nº real armazenado em X,
utilizando 5 casas para parte inteira e 2 casas para a decimal.
21
Constantes de barra invertida
Constante Significado
\n Nova linha
\” Aspas
\’ Apóstofro
\0 Nulo (0 decimal)
\\ Barra Invertida
22
Funções de Entrada e Saída - scanf()
23
Funções de Entrada e Saída
■ Tabela de códigos de tipos de dados
Exemplos:
char letra;
float nota;
int quantDeFilhos;
scanf(“%c”, &letra);
scanf(“%f”, ¬a);
scanf(“%d”, &quantDeFilhos);
24