Académique Documents
Professionnel Documents
Culture Documents
PSI 1 ano
Tipos de dados em
variveis
Declarao:
programa;
Locais: podem ser usadas apenas na funo onde foi
declarada.
#include <stdio.h>
#include <stdlib.h>
int a, b = 10; // Variveis globais
void f(char c) {
double d = 10.0; // Varivel local
int i = a; // Varivel local
}
int main() {
int i = b;
return 0;
}
// Varivel local
4
constantes
So valores que so mantidos fixos pelo compilador.
Constantes so o oposto das variveis, apesar de
trabalharem da mesma forma.
As variveis tm esse nome exatamente porque
podemos mudar o seu valor durante a execuo do
programa.
J as constantes so dados gravados em memria que
de forma alguma podemos alterar seu valor.
#define tipo A;
#define numero 56;
Significado
\b
\f
\t
\n
\
\
\0
\\
\a
\N
\xN
Retrocesso (backspace)
Alimentao de formulrio (form feed)
Tabulao Horizontal (tab)
Nova Linha
Aspas
Apstrofo
Nulo
Barra Invertida
Sinal Sonoro (Beep)
Constante Octal (N o valor da constante)
6
declaraes
num Algoritmo:
na Linguagem C:
#include <stdio.h>
main()
{
double n1, n2, n3, media;
}
7
declaraes
Declaraes servem para descrever as variveis e os
seus tipos.
Os nomes das variveis devem conter apenas letras,
dgitos e o smbolo undescore (_).
Os principais tipos em C so: int, float, double e char.
Exemplos:
int n;
int quantidade_valores;
float x, y, somaValores;
char sexo;
char nome[40];
8
tipos de dados em C
tipos de dados em C
So as formas que utilizamos para representar dados na
linguagem.
4 tipos bsicos e um especial:
10
tipos de dados em C
11
int
O tipo de dado int (inteiro) serve para armazenar
valores numricos inteiros (sem parte fracionria)
positivos e negativos.
Existem vrios tipos de inteiros, cada um de tamanho diferente
(dependendo do sistema operacional e/ou arquitetura do
processador):
12
int
Ex: para declarar uma varivel com o nome quadrado
do tipo inteiro deveramos utilizar a seguinte instruo:
int quadrado;
Operaes possveis: soma (+), subtrao (-),
multiplicao (*), diviso inteira (/) e resto da diviso
inteira (%).
Como devolvido sempre um inteiro, por exemplo, a
operao 21/4 devolver 5 e no 5,25.
A operao 21%4 ir devolver o resto da diviso de 21 por 4,
ou seja 1.
13
float, double
O tipos de dado float e double servem para armazenar
nmeros de ponto flutuante, i.e., com casas decimais.
A diferena entre uma varivel float e double o
nmero de bytes que reserva para armazenar o valor
(a dimenso do float 4 bytes e do double 8 bytes).
14
float, double
representado por uma parte inteira e outra decimal
separadas por um ponto.
float Pi = 3.1415;
double erro = 0.00000002;
float total = 0.2;
A atribuio, leitura e escrita pode ser realizada usando notao cientfica atravs de
uma base e de um expoente: 240.23 E22 = 240.23 * 1022
15
char
O tipo char permite armazenar numa varivel deste
tipo um nico caractere.
Ocupa 1 byte ( sempre utilizado um nico byte,
independentemente do tipo de computador).
char ch, varch;
Isto significa que o programa reserva um espao de 8 bits na
memria RAM ou em registos do processador para
armazenar um valor (char de tamanho maior que 8 bits
permitido pela linguagem C, mas os casos so raros).
inicializao e atribuio
Em C as variveis podem ser inicializadas com um valor
quando so declaradas.
Exemplo:
int cont = 10;
O operador = (i.e., igual) usado para afetar valores a
variveis.
Exemplo:
cont = 32;
letra = 'A';
17
n++;
As seguintes instrues so todas equivalentes:
a = a + 1;
a += 1;
a++;
++a;
18
Formato
%d
%l
%f
%lf
%c
%s
%p
Tipo de dados
Inteiro
Inteiro longo
Real
Real (dupla preciso)
Caractere
String (cadeia de caracteres)
Apontador (pointer)
19
20
comando de sada
A funo printf()
possibilita a sada de valores (sejam eles constantes, variveis
ou resultado de expresses) segundo um determinado
formato.
printf(mensagem [,lista de argumentos]);
Mensagem (string) com cdigos de
controlo embutidos na mesma
Exemplos:
printf(O valor de PI %f, 3.1415);
printf(O menu nome %s e tenho %d anos., Joo, 16);
21
comando de entrada
A funo scanf()
Permite capturarmos valores fornecidos via teclado pelo utilizador
do programa.
scanf(cdigo de controlo,lista de argumentos);
Exemplo 2:
float numero;
printf(digite um valor);
scanf( %f , &numero); 22
operadores aritmticos em C
Operador
+
*
/
%
++
--
Ao
Soma
Subtrao ou troca de sinal
Multiplicao
Diviso
Resto da diviso inteira
Incremento
Decremento
23
operadores relacionais em C
Operador
Relao
>
>=
<
<=
==
!=
Maior que
Maior que ou igual a
Menor que
Menor que ou igual a
Igual a
Diferente de
operadores lgicos em C
Operador
&&
||
!
Funo
AND
OR
NOT
Ao
AND Lgico
OR Lgico
XOR (OR exclusivo)
NOT
Shift Rigth
Shift Left
operadores de atribuio em C
Operador
=
+=
-=
*=
/=
%=
Exemplo
x=y
Ao
Atribui o valor de y a x
x += y
Equivale a x = x + y
x -= y
Equivale a x = x + y
x *= y
Equivale a x = x * y
x /= y
Equivale a x = x / y
x %= y
Equivale a x = x / y
27
Programas
exemplo
28
exemplo02.c
#include <stdio.h>
#include <stdlib.h>
main()
{
int num_1; // declaramos num_1
num_1 = 44; // atribumos o valor 44 a num_1
int num_2; // declaramos num_2
num_2 = num_1 + 20; // atribumos o valor soma a num_2
printf("\no primeiro numero : %d", num_1);
printf("\no segundo numero num_1+20: %d\n", num_2);
system("pause");
}
29
exemplo03.c
#include <stdio.h>
#include <stdlib.h>
main()
{
int
char
float
double
soma = 100;
letra = 'Z';
set1 = 23.567;
num2 = 11e+23;
printf("Varivel
printf("Varivel
printf("Varivel
printf("Varivel
system("pause");
}
30
exemplo04.c
#include <stdio.h>
#include <stdlib.h>
main()
{
int evento = 5;
char corrida = 'C';
float tempo = 27.25;
printf("\n O tempo vitorioso na eliminatoria %c ",
corrida);
printf("da competicao %d", evento);
printf(" foi %4.2f (mm.ss)\n", tempo); // v que a
linha de comando termina aqui
system("pause");
}
31
exemplo05a.c
#include <stdio.h>
#include <stdlib.h>
main()
{
char ch;
printf("---versao original do programa:\n");
printf("\tIntroduza um caractere: ");
scanf("%c",&ch);
printf("\tO caractere introduzido foi %c\n\n",ch);
system("pause");
32
exemplo05b.c
#include <stdio.h>
#include <stdlib.h>
main()
{
char ch;
printf("---segunda versao do programa anterior:\n");
printf("\tIntroduza um caractere: ");
ch = getchar();
printf("\tO caractere introduzido foi %c\n\n",ch);
system("pause");
33
funes matemticas em C
#include <math.h>
Funo
Exemplo
Comentrio
ceil
ceil(x)
cos
cos(x)
Cosseno de x (x em radianos)
exp
exp(x)
e elevado potencia x
fabs
fabs(x)
Valor absoluto de x
floor
floor(x)
log
log(x)
Logaritmo natural de x
log10
log10(x)
Logaritmo decimal de x
pow
pow(x, y)
sin
sin(x)
Seno de x
sqrt
sqrt(x)
Raiz quadrada de x
tan
tan(x)
Tangente de x
34
EXERCCIO)
Construir um programa que tendo como entrada
dois pontos quaisquer do plano P(x1,y1) e Q(x2,y2),
imprima a distncia entre eles.
A frmula da distncia :
35
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{
}
float x1, y1, x2, y2;
float distancia;
printf("\nDigite o valor de x1:");
scanf("%f",&x1);
printf("\nDigite o valor de y1:");
scanf("%f",&y1);
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
main()
{
float x1, y1, x2, y2;
float distancia;
printf ("\nDigite o valor de x1: ");
scanf ("%f",&x1);
printf ("\nDigite o valor de y1: ");
scanf ("%f",&y1);
printf ("\nDigite o valor de x2: ");
scanf ("%f",&x2);
printf ("\nDigite o valor de y2: ");
scanf ("%f",&y2);
distancia=sqrt(pow((x2-x1),2)+pow((y2-y1),2));
printf ("\nA distancia entre os pontos P1 e P2 %.2f\n",
distancia);
system("PAUSE");
}
39
ontinua
40