A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PROGRAMAÇÃO I UNIDADE 2.

Apresentações semelhantes


Apresentação em tema: "PROGRAMAÇÃO I UNIDADE 2."— Transcrição da apresentação:

1 PROGRAMAÇÃO I UNIDADE 2

2 Variáveis Variáveis são locais onde são armazenados os valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa, e por um tipo, que determina o que pode ser armazenado naquela variável. Programação I 08/2011

3 Declarando uma variável
int soma; Variáveis só armazenam valores do mesmo tipo com que foram declaradas Ex: int a; /* declara uma variável do tipo int */ a = 4.3; /* a armazenará o valor 4 */ Nome da Variável Tipo da Variável Programação I

4 Tipos básicos Tipo Tamanho Menor valor Maior valor char 1 byte -128
+127 unsigned char +255 short int 2 bytes unsigned short int int (*) 4 bytes long int unsign long int float -10 38 +10 38 (*) depende da máquina, sendo 4 bytes para arquitetura de 32 bits Programação I

5 Variável com valor indefinido:
uma variável pode receber um valor quando é definida (inicializada), ou através de um operador de atribuição int a = 5, b = 10; /* declara e inicializa duas variáveis do tipo int */ float c = 5.3; /* declara e inicializa uma variável do tipo float */ Programação I

6 uma variável deve ter um valor definido quando é utilizada
int a, b, c; /* declara e inicializa duas variáveis do tipo int */ a = 2; c = a + b; /* ERRO: b contém “lixo” */ Programação I

7 Obtendo o tamanho de um tipo
O comando sizeof(tipo) retorna o tamanho, em bytes, de um determinado tipo. (Um byte corresponde a 8 bits). Ex: printf ("%d", sizeof(int)); escreve 4 na tela (Pentium). Programação I

8 Regras para nomes de variáveis em C
Deve começar com uma letra (maiúscula ou minúscula) ou subscrito(_). Nunca pode começar com um número. Pode conter letras maiúsculas, minúsculas, números e subscrito. Não podemos utilizar { ( * / \ ; . , ? como parte do nome de uma variável. Programação I

9 Regras para nomes de variáveis em C
As seguintes palavras já tem um significado na linguagem C e por esse motivo não podem ser utilizadas como nome de variáveis: auto double int struct break enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while Programação I

10 Constantes Valores constantes são armazenados na memória
Assim como as variáveis, as constantes também possuem um tipo. Os tipos permitidos são exatamente os mesmos das variáveis, mais o tipo string, que corresponde a uma seqüência de caracteres. Exemplos : 85, 0.10, ’c’, ”Meu primeiro programa”. Programação I

11 Exemplos de constantes
123 /* constante inteira do tipo “int” */ /* constante real do tipo “double” */ 1245e-2 /* constante real do tipo “double” */ 12.45F /* constante real do tipo “float” */ Programação I

12 Constantes inteiras Um número na forma decimal, como escrito normalmente Ex: 10, 145, Um número na forma hexadecimal (base 16), precedido de 0x Ex: 0xA (0xA16 = 102), 0x100 (0x10016 = 2562) Um número na forma octal (base 8), precedido de 0 Ex: 010 (0x108 = 82) Programação I

13 Constantes do tipo ponto flutuante
Um número decimal. Para a linguagem C, um número só pode ser considerado um número decimal se tiver uma parte ”não inteira”, mesmo que essa parte não inteira tenha valor zero. Utilizamos o ponto para separarmos a parte inteira da parte ”não inteira” Ex: 10.0, 5.2, Programação I

14 Constantes do tipo ponto flutuante
Um número inteiro ou decimal seguido da letra e e de um expoente. Um número escrito dessa forma deve ser interpretado como: numero · 10expoente Ex: 2e2 (2e2 = 2 · 102 = 200.0) Programação I

15 Constantes do tipo caracter
Uma constante do tipo caracter é sempre representado por uma letra entre aspas simples. Ex: ‘A’ Toda constante do tipo caracter pode ser usada como uma constante do tipo inteiro. Nesse caso, o valor atribuído será o valor daquela letra na tabela ASCII. Programação I

16 Constantes do tipo string
Uma constante do tipo é um texto entre aspas duplas Ex: ”Meu primeiro programa” Programação I

17 Operadores e expressões
Operadores aritméticos ( + , - , * , / , % ): – operações são feitas na precisão dos operandos o operando com tipo de menor expressividade é convertido para o tipo do operando com tipo de maior expressividade divisão entre inteiros trunca a parte fracionária int a double b, c; a = 3.5; /* a recebe o valor 3 */ b = a / 2.0; /* b recebe o valor 1.5 */ c = 1/3 + b; /* 1/3 retorna 0 pois a operação será sobre inteiros. c recebe o valor de b */ Programação I

18 Operadores e expressões
Operadores aritméticos (cont.): – o operador módulo, “%”, aplica-se a inteiros – precedência dos operadores: * , / , - , + x % 2 /* o resultado será 0, se x for par; caso contrário, será 1 */ a + b * c / d é equivalente a (a + ((b * c) / d)) Programação I

19 Operadores e expressões
Operadores de atribuição ( = , += , -= , *= , /= , %= ): – C trata uma atribuição como uma expressão a ordem é da direita para a esquerda – C oferece uma notação compacta para atribuições em que a mesma variável aparece dos dois lados var op= expr é equivalente a var = var op (expr) i += 2; é equivalente a i = i + 2; x *= y + 1; é equivalente a x = x * (y +1); Programação I

20 Operadores e expressões
Operadores de incremento e decremento ( ++ , -- ): incrementa ou decrementa de uma unidade o valor de uma variável • os operadores não se aplicam a expressões • o incremento pode ser antes ou depois da variável ser utilizada n++ incrementa n de uma unidade, depois de ser usado ++n incrementa n de uma unidade, antes de ser usado n = 5; x = n++; /* x recebe 5; n é incrementada para 6 */ x = ++n; /* n é incrementada para 6; x recebe 6 */ a = 3; b = a++ * 2; /* b termina com o valor 6 e a com o valor 4 */ Programação I

21 Operadores e expressões
Conversão de tipo: – conversão de tipo é automática na avaliação de uma expressão – conversão de tipo pode ser requisita explicitamente float f; /* valor 3 é convertido automaticamente para “float” */ float f = 3; /* ou seja, passa a valer 3.0F, antes de ser atribuído a f */ int g, h; /* 3.5 é convertido (e arredondado) para “int” */ g = (int) 3.5; /* antes de ser atribuído à variável g */ h = (int) 3.5 % 2 /* e antes de aplicar o operador módulo “%” */ Programação I

22 Entrada e Saída Função “printf”: Ex: printf ("%d %g", 33, 5.3);
– possibilita a saída de valores segundo um determinado formato printf (formato, lista de constantes/variáveis/expressões...); Ex: printf ("%d %g", 33, 5.3); tem como resultado a impressão da linha: 33 5.3 printf ("Inteiro = %d Real = %g", 33, 5.3); tem como saída: Inteiro = 33 Real = 5.3 Programação I

23 Entrada e Saída Especificação de formato: %c especifica um char
%d especifica um int %u especifica um unsigned int %f especifica um double (ou float) %e especifica um double (ou float) no formato científico %g especifica um double (ou float) no formato mais apropriado (%f ou %e) %s especifica uma cadeia de caracteres Programação I

24 Entrada e Saída Impressão de texto:
printf("Curso de Estruturas de Dados\n"); exibe na tela a mensagem: Curso de Estruturas de Dados Programação I

25 Entrada e Saída Especificação de caracteres de “escape”:
\n caractere de nova linha \t caractere de tabulação \r caractere de retrocesso \" caractere “ \\ caractere \ Programação I

26 Entrada e Saída Especificação de tamanho de campo Programação I

27 Entrada e Saída Função “scanf”:
– captura valores fornecidos via teclado scanf (formato, lista de endereços das variáveis...); int n; scanf ("%d", &n); valor inteiro digitado pelo usuário é armazenado na variável n Programação I

28 Entrada e Saída Especificação de formato: %c especifica um char
%d especifica um int %u especifica um unsigned int %f,%e,%g especificam um float %lf, %le, %lg especificam um double %s especifica uma cadeia de caracteres Programação I

29 Entrada e Saída Função “scanf” (cont.):
– caracteres diferentes dos especificadores no formato servem para cercar a entrada – espaço em branco dentro do formato faz com que sejam "pulados" eventuais brancos da entrada – %d, %f, %e e %g automaticamente pulam os brancos que precederem os valores numéricos a serem capturados scanf ("%d:%d", &h, &m); valores (inteiros) fornecidos devem ser separados pelo caractere dois pontos (:) Programação I

30 Programação I


Carregar ppt "PROGRAMAÇÃO I UNIDADE 2."

Apresentações semelhantes


Anúncios Google