1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas...

23
1 Revisão da Linguagem C

Transcript of 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas...

Page 1: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

1

Revisão da Linguagem C

Page 2: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

2

Modelo de um Programa

Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada

Dados são armazenados em VARIÁVEISVARIÁVEIS– posições de memória, representadas

por um nome, que podem conter dados

– as variáveis podem conter tipos diferentes de dados

Page 3: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

3

Variáveis e Tipos de Dados

Variáveis podem conter valores diferentes durante a execução do programa– os valores devem ser consistentes

com o tipo da variável

Alguns valores não devem ser alterados durante a execução– Constantes

Page 4: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

4

Tipos de Dados

Cada constante, variável,

expressão ou função é de um

certo tipo– refere-se ao conjunto de valores

que pode assumir

Page 5: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

5

Mapa Conceitual da Memória

Pilha– endereço de retorno de

funções– parâmetros para funções– variáveis globais

Heap– região de memória livre– alocação dinâmica– aplicações como lista

encadeada e árvores

Pilha

Heap

Variáveis Globais

Código do Programa

Page 6: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

6

Tipos de Dados

A um tipo de dado estão associados:– uma representação– o tamanho de células de memória para

armazenar esta representação a área de memória onde ficará o

valor da variável tem que ter dimensões compatíveis com a sua representação

conjunto de valores que variáveis de um dado tipo podem assumir

Page 7: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

7

Tipos de Dados

As operações exigem argumentos de um dado tipo e produzem resultados do mesmo tipo

É importante para o compilador saber o tipo de cada variável antes de empregá-la em uma operação

Page 8: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

8

Tipos Básicos do C

São cinco os tipos de dados básicos do C:– char (1 byte)– int (2 ou 4 bytes)– float (4 bytes)– double (8 bytes)– void (nenhum)

O tamanho e a faixa destes dados dependem do processador e da implementação do compilador

Page 9: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

9

Operadores EspeciaisOperadores & e *

&: significa “o endereço de”

*: significa “o conteúdo do endereço”Exemplo:

m = &valor; (guarda o endereço da variável valor na variável m)

v = *m; (armazena em v o conteúdo da variável localizada no endereço armazenado em m – corresponde a v=valor)

Page 10: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

10

Comandos de Entrada/Saída

Entradascanf (“%d”, &num);

lê um dado do teclado com o formato especificado

Saída– printf (“%d”, num);

escreve na tela o conteúdo da variável com o formato especificado

Page 11: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

11

Formatos

Para scanf e printf: %d – inteiro %l – inteiro longo %f – float %lf – double %c – caracter %s – string

Ex.: scanf(“%s %d, %f”, nome, &freq, &nota)– lê uma linha no seguinte formato

Maria 12, 7.5

Apenas para printf: \n – nova linha \r – retorno do cursor \t – TAB \b – Backspace \” – Aspas \\ – Barra \f – salto de página

Page 12: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

12

Comandos para o Compilador #include <Nome_arquivo>

– expande o arquivo de Nome_arquivo dentro do arquivo fonte

– < >: definição da implementação– “ ”: definição do programador - permite

especificar o caminho (procura primeiro no diretório atual e depois no local padrão para bibliotecas)

#define MAX 10– define MAX como uma constante 10– substitui o texto MAX por 10– funciona como uma macro

Page 13: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

13

Um Programa em “C”

#include …… #define ……/* protótipos de funções *//* função principal */main (){

…………}/* demais funções */

Page 14: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

14

Estruturas Básicas de Controle

CondicionalCondicionalSE .... ENTÃO

if ( condição) {if ( condição) {

......

}}

else {else {

......

}}

Page 15: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

15

Instruções CondicionaisExemplo:

if (x>5)y=10;

elsey=15;

que pode ser substituído por:y = x>5 ? 10 : 15;

Page 16: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

16

Instruções Case

CASE

switch (expressão) {case constante1:

<comandos>; break;case constante2:

<comandos>; break;...default:

<comandos>;}

Page 17: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

17

Instruções CaseExemplo:

switch nome { case "Maria":

printf (“Oi Maria!”); break;case "Paulo":

printf (“Oi Paulo!”); break;case "Monica":

printf (“Oi Monica!”); break;}

Page 18: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

18

Comandos Básicos do C

Repetição

while ( <condição> ) { comando_1;comando_2;...comando_n;

}

Page 19: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

19

Comandos Básicos do C

Repetição

do { comando_1;comando_2;...comando_n;

} while (<condição>);

Page 20: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

20

Comandos Básicos do C

Repetição

for (i=1; i<=N; i++) { comando_1;comando_2;...comando_n;

};

Page 21: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

21

Usando Tipos Se tenho que definir uma variável para

conter idades, que tipo usar?– inteiros e curtos são suficientes

É função do:– conjunto de valores que a variável

pode assumir– da precisão que se deseja no

resultado de operações

Page 22: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

22

String de Caracteres

Uma seqüência de caracteres– não possui uma representação direta no

C– ‘\0’ no final– constantes entre aspas (no tipo caracter,

a constante deve estar entre apóstrofos)

– char a[50]– #define nome ”Maria”– char a = ‘A’;

Page 23: 1 Revisão da Linguagem C. 2 Modelo de um Programa Entradas são armazenadas para serem processadas e gerar uma saída útil e desejada VARIÁVEIS Dados são.

23

String de Caracteres

Manipulação de strings– strcpy(s1,s2): copia s2 em s1– strcat(s1,s2): concatena s2 no final de

s1– strlen(s1): tamanho de s1– strcmp(s1,s2): zero de s1==s2,

negativo se s1<s2 e positivo se s1>s2

– requerem: #include <string.h>