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

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

PROGRAMAÇÃO ou LINGUAGEM C?

Apresentações semelhantes


Apresentação em tema: "PROGRAMAÇÃO ou LINGUAGEM C?"— Transcrição da apresentação:

1 PROGRAMAÇÃO ou LINGUAGEM C?
Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo

2 TÓPICOS 1. Introdução à Linguagem C 2. Operadores e Expressões
3. Estruturas de Controle 4. Entrada e Saída 5. Vetores 6. Strings 7. Funções 8. Ponteiros 9. Estruturas e Uniões 10. Arquivos Texto 11. Arquivos Binários

3 2. Operadores e Expressões
“Operadores de diversos tipos manipulam variáveis (com diferentes nomes e vários tipos) e constantes para formar expressões.” Teremos então que ver em maiores detalhes : Nomes de variáveis Tipos de Variáveis Uso de variáveis Constantes Operadores Aritméticos De atribuição Lógicos …para aí chegarmos às expressões

4 2. Operadores e Expressões
Nomes de variáveis Nomes utilizados para se fazer referência a variáveis, funções, rótulos e outros objetos são chamados identificadores e se utilizam das mesmas regras descritas adiante Regras de formação: Os primeiros caracteres com letras ou sublinhados Os subsequentes com letras, números, sublinhados ou $. Ex.: cont, test23, alt_balanco Os 32 primeiros caracteres são significativos Letras maiúsculas e minúsculas tratadas de forma diferente Não pode ser igual a uma palavra reservada e não deve ser igual a uma função da biblioteca

5 2. Operadores e Expressões
Tipos de variáveis TIPO EXTENSÃO ESCALA char a 255 int a 32767 float E-38 a 3.4E+38 double E-308 a 1.7E+308 void 0 sem valor Modificadores: alteram os tipos base de forma que se adequem a uma situação específica. São eles: signed, unsigned, long e short

6 2. Operadores e Expressões
Observações quanto aos modificadores: todos eles são aplicados a char e int, long pode ser aplicado a double signed com inteiro é redundante inteiro com sinal significa que tem um sinalizador no bit de ordem superior. Ex.: 127 é e -127 é a maioria dos computadores representará números negativos e, complemento de 2. Ex.: -127 como o número inteiro se fosse declarado como unsigned int seria 65535

7 2. Operadores e Expressões
TIPO EXTENSÃO ESCALA char a 127 unsigned char a 255 signed char a 127 int a 32767 unsigned int a 65535 signed int a 32767 short int a 32767 unsigned short int a 65535 signed short int a 32767 long int a signed long int a unsigned long int a float E-38 a 3.4E+38 double E-308 a 1.7E+308 long double E-4932 a 3.4E+4932

8 2. Operadores e Expressões
Exemplo que mostra a diferença de um inteiro com sinal e de um inteiro sem sinal: main() { int i; /*inteiro com sinal*/ unsigned int j;/*inteiro sem sinal*/ j = 60000; i =j; printf (“%d %u”,i,j); }

9 2. Operadores e Expressões
Exemplo com cuidados para limites com os tipos: main() { int i, j, k; char c, d, e; long tm; tm = time(0); for (i=0;i<10000;i++) for (j=0;j<10000;j++) for (k=0;k<10000;k++); printf(“tempo para inteiros: %ld\n”,time(0)-tm); for (c=0;c<100;c++) for (d=0;d<100;d++) for (e=0;e<100;e++); printf(“tempo para caracteres: %ld\n”,time(0)-tm); }

10 2. Operadores e Expressões
Uso de variáveis declaração: tipo lista_variáveis; Ex.: int cont; Regras de escopo 1) fora de todas as funções; 2) dentro de uma função; 3) na declaração de parâmetros formais; 4) em um bloco condicional Constantes valores fixos as constantes de caracteres são entre aspas simples: ‘a’ e ‘%’ constantes numéricas: 10 e -100

11 2. Operadores e Expressões
int soma; /* variável global */ main() { int cont; /* variável local */ soma = 0; for (cont=0;cont<10;cont++) { total(cont); mostra(); } } mostra() total(x) { int x; int cont; /* local */ { for(cont=0;cont<10;cont++) soma = x + soma; printf(“-”); } printf(“a soma e %d\n”,soma); Exemplo regras de escopo:

12 2. Operadores e Expressões
Constantes de ponto flutuante exigem ponto decimal seguido do componente fracionário Podem ter vários exemplos combinados Constantes hexa: int hex=0xFF /*255 decimal*/ Constantes octais: int oct=011 /*9 decimal*/ Constantes de strings: conjunto de caracteres entre aspas. Ex. “lafa”, “a” # ’a’ Constantes com barras invertidas: Ex.: ch=‘\t’ Algumas constantes: \b-retrocesso, \f-alimentação de formulário, \n-nova linha, \r-retorno, \t-tab, \”-aspas, \’-aspas, \0-zero, \\-barra, \v-tab, \a-alerta, \N-octal, \x-hexa

13 2. Operadores e Expressões
símbolo que manda o computador executar manipulações matemáticas ou lógicas Categorias: aritméticos, de atribuição, de relação e lógicos e bit a bit, além dos operadores especiais O que veremos: aritméticos, de relação e lógicos e de atribuição Aritméticos: + - * / % O menos unário também é considerado operador -- e ++ Ex.: x++ e ++x, x-- e --x Há uma diferença entre: x=10 ; x=10; y=++x; e y=x++; Precedência: */% +-

14 2. Operadores e Expressões
De relação e lógicos: de relação - mostra as relações que os valores devem ter uns com os outros Lógicos - mostram a maneira como as relações podem ser concatenadas Relação: V- é qualquer valor não zero, F- um valor zero > >= < <= == != Lógicos: obedecem à tabela verdade && (AND) !! (OR) ! (NOT) p q p AND q p OR q NOT p 10 > 5 && !(10 > 9) || 3<= 4 é V ou F? 1 && !(0 || 1) é V ou F?

15 2. Operadores e Expressões
Exemplo programa com operadores de relação: main() { int i, j; printf (“digite dois numeros: “); scanf (“%d %d”,&i,&j); printf (“%d == %d e %d\n”, i, j, i == j); printf (“%d != %d e %d\n”, i, j, i != j); printf (“%d <= %d e %d\n”, i, j, i <= j); printf (“%d >= %d e %d\n”, i, j, i >= j); printf (“%d < %d e %d\n”, i, j, i < j); printf (“%d > %d e %d\n”, i, j, i > j); }

16 2. Operadores e Expressões
Exemplo programa com operadores lógicos: main() { int i, j; printf (“digite dois numeros, 0 ou 1: “); scanf (“%d %d”, &i, &j); printf (“%d AND %d e %d\n”, i, j, i && j); printf (“%d OR %d e %d\n”, i, j, i || j); printf (“NOT %d e %d\n”, i, !i); }

17 Outro exemplo com operadores relacionais e lógicos:
main() { int i; for (i=1;i<100;i++) if (!i%2) printf (“%d “,i); }

18 2. Operadores e Expressões
De atribuição: = é permitido que seja utilizado com outros operadores x+=10 é o mesmo que x=x+10 posso usar operadores múltiplos: x=y=z=0; posso usar condicional: y = x > 9 ? 100 : 200; main() { int x, y, produto; printf(“digite dois numeros: “); scanf (“%d%d”, &x, &y); if ((produto = x*y) < 0) printf (“produto negativo\n”); } Exemplo de atribuição:

19 2. Operadores e Expressões
combinam operadores, constantes e variáveis seguem as regras de álgebra quando são misturados tipos diferentes em uma expressão, C converte de acordo com as regras char e short int ficam int, float fica double, se um valor é long double o outro fica long double se um valor é double o outro fica double se um valor é long o outro fica long se um valor é unsigned o outro fica unsigned Forçando uma expressão a ser de um tipo (casts): Ex. (float) x/2; Formato: (tipo) exp Pode e devem ser usados espaçamentos e parênteses


Carregar ppt "PROGRAMAÇÃO ou LINGUAGEM C?"

Apresentações semelhantes


Anúncios Google