1 / 86

Treinamento - OBI

Treinamento - OBI. Linguagem C Wladimir Araújo Tavares. Histórico:. 1970 : Denis Ritchie desenha uma linguagem a partir do BCPL nos laboratórios da Bell Telephones, Inc. Chama a linguagem de B. 1978 :  Brian Kerningham junta-se a Ritchie para aprimorar a linguagem. A nova versão chama-se

alastair
Download Presentation

Treinamento - OBI

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Treinamento - OBI Linguagem C Wladimir Araújo Tavares

  2. Histórico: 1970: Denis Ritchie desenha uma linguagem a partir do BCPL nos laboratórios da Bell Telephones, Inc. Chama a linguagem de B. 1978:  Brian Kerningham junta-se a Ritchie para aprimorar a linguagem. A nova versão chama-se C. Pelas suas características de portabilidade e estruturação já se torna popular entre os programadores.

  3. Continuação... 1980: A linguagem é padronizada peloAmerican National Standard Institute: surge o ANSI C. 1992: O C se torna ponto de concordância entre teóricos do desenvolvimento da teoria de Object  Oriented Programming (programação orientada a objetos): surge o C++.

  4. Compilada Case Sensitive Médio Nível Sistema de tipo fraca Permite o controle total Estruturada Características :

  5. //Isso eh um comentário /*Os comentários são ignorados pelo compilador*/ #include <stdio.h> /* Diz ao compilador que ele deve incluir o arquivo stdio.h std=standard io = Input/Output*/ #include <stdlib.h> /*Diz ao compilador que ele deve incluir o arquivo stdlib.h std=standard lib=library */ int main(){ puts("Hello World!!!!");//Escreve na tela puts("Uma funcao de saida"); system("PAUSE"); return 0; }

  6. Observações: main ( )primeira função a ser executada { início da função } fim da função puts(string) escreve a string na tela

  7. Caracteres de Controle: • \n nova linha • \r “enter” • \t tabulação (tab) • \b retrocesso • \“ aspas • \ \ barra • \a beep • \0 Nulo

  8. #include <stdio.h> #include <stdlib.h> int main(){ printf("\tEscreva issa\bo entre \"Hello\"\n\a"); system("PAUSE"); }

  9. Código de Formatação: • %c caracter • %d decimal • %f ponto flutuante • %s cadeia de caracteres(string)

  10. #include <stdio.h> #include <stdlib.h> int main() { printf ("Caracteres: %c %c \n", 'a', 65); printf ("Decimals: %d \n", 1977); printf ("Antecedido com brancos: %10d \n", 1977); printf ("Antecedido com zeros : %010d \n", 1977); printf (“Reais: %.2f %.4f\n", 3.1416, 3.1416); printf ("%s \n", "Uma palavra"); system("PAUSE"); }

  11. Variáveis: Espaço de memória de um certo tipo de dado associado a um nome para referenciar seu conteúdo.

  12. #include <stdio.h> #include <stdlib.h> int main(){ int idade; idade = 12; printf (" A minha idade é : %d", idade); system("PAUSE"); return 0; }

  13. Tipos Básicos:

  14. #include <stdio.h> #include <stdlib.h> int main() { char c; int x; float f; double d; printf("O tamanho do caracter eh %d\n",sizeof(c)); printf("O tamanho do inteiro eh %d\n",sizeof(x)); printf("O tamanho do ponto flutuante %d\n",sizeof(f)); printf("O tamanho do double eh %d\n",sizeof(d)); system("PAUSE"); }

  15. Nome de variáveis: Não pode começar com números. Devem começar com letra ou sublinhados. Não pode-se definir o nome das variáveis com o mesmo nome das palavras chaves. Não possuem acentuação e nem cedilha.

  16. Palavras Chaves auto   double  int   struct   break   else   long   switch   case   enum   register typedef   char   extern  return   union   const   float   short   unsigned   continue  for   signed   void   default   goto   sizeof   volatile   do   if   static   while

  17. Comando if if <condição> <comando> | <lista_de_comandos> <condição> São expressões que admitem um valor Verdade.

  18. #include <stdio.h> #include <stdlib.h> int main() { int idade = 12; if ( idade > 10 ) printf("Idade maior que 10\n"); system("PAUSE"); }

  19. OPERADORES ARITMÉTICOS • + Soma • - Subtração • * Multiplicação • / Divisão • % Resto Ex: 7 % 2 = 1 8 % 3 = 2

  20. Exercícios: Qual é o valor de x : x = 2 * 3 + 3 ; x = 2*( 3 + 3); x = 3 + 4 * 2; x = 4 % 2 + 2; x = 4 %(2 + 2); x = 2 – 2 – 3; x = 4 / 2 / 2 ; X = 4 * 2 * 2;

  21. OPERADORES DE INCREMENTO E DECREMENTO • ++ incrementa a variável • -- decrementa a variável Ex: i++; i = i + 1; i--; i = i - 1;

  22. Exercício: x = 22; y = x++; x = ? y = ? x = 22; y = ++x; x = ? y = ?

  23. OPERADORES RELACIONAIS • > maior • >= maior ou igual • < menor • <= menor ou igual • == igualdade • != diferença

  24. OPERADORES LÓGICOS && e || or ! não Ex: (10 > 5) V ( (10 > 5) && ( 2 > 3 ) ) F ( (10 > 5) || ( 2 > 3 ) ) V ( (10 > 5) && ! ( 2 > 3 ) ) V

  25. #include <stdio.h> #include <stdlib.h> int main(){ char nome[ 20 ]; int idade; printf("Entre com o seu nome:"); scanf("%s",nome); printf("Entre com a sua idade:"); scanf("%d",&idade); printf("Boa Noite , Sr. %s\n",nome); if(idade <= 18 ) printf("Não vai para a escola!!!\n"); if( (idade > 18) && (idade <= 65 ) ) printf("Não vai trabalhar hj!!!\n"); if( idade > 65 ) printf("Como está a aposentadoria"); system("PAUSE"); return 0; }

  26. If-else If <condição> <comando> | <lista_de_comandos> else <comando> | <lista_de_comandos>

  27. #include <stdio.h> #include <stdlib.h> int main(){ char nome[ 20 ]; int idade; printf("Entre com o seu nome:"); scanf("%s",nome); printf("Entre com a sua idade:"); scanf("%d",&idade); printf("Boa Noite , Sr. %s\n",nome); if(idade <= 18 ) printf("Não vai para a escola!!!\n"); else{ if ( idade <= 65 ) printf("Não vai trabalhar hj!!!\n"); else printf("Como está a aposentadoria"); } system("PAUSE"); return 0; }

  28. #include <stdio.h> #include <stdlib.h> int main() { int a,b,c; printf("Entre com tres numeros:"); scanf("%d %d %d",&a,&b,&c); if (a > b) if (a > c) printf("\nO Maior é %d\n",a); else printf("\nO Maior é %d\n",c); else if (b > c) printf("\nO Maior é %d\n",b); else printf("\nO Maior é %d\n",c); system("PAUSE"); }

  29. Comando for for ( <início> ; <condição> ; <incremento> ) <comando>| <lista_comando> Ex: for(i=0;i < 10 ;i++) printf(“%d”,i);

  30. #include <stdio.h> #include <stdlib.h> int main() { int i; //Imprime os pares de 0 ate 10 for(i =0;i<=10;i=i+2){ printf("%d\n",i); } //Imprime a tabuada de 2 for(i=0;i<=10;i++){ printf("2 x %2d = %d\n",i,2*i); } system("PAUSE"); }

  31. #include <stdio.h> #include <stdlib.h> //Testa se eh primo int main(){ int n,i,ehprimo; printf("Entre com um n:"); scanf("%d",&n); ehprimo = 1; for(i=2;i<n;i++) if(n%i==0){ ehprimo = 0; break; } if( ehprimo ) printf("%d eh primo\n",n); else printf("%d nao eh primo\n",n); system("PAUSE"); }

  32. #include <stdio.h> #include <stdlib.h> int main(){ int n,i,ehprimo; printf("Entre com um n:"); scanf("%d",&n); if( n%2==0 ) ehprimo = 0; else{ ehprimo = 1; for(i=3;i<n;i+=2) if(n%i==0){ ehprimo = 0; break; } } if( ehprimo ) printf("%d eh primo\n",n); else printf("%d nao eh primo\n",n); system("PAUSE"); }

  33. Comando while while <condição> <comando> | <lista_comandos> Ex: i = 0; while( i < 10 ){ printf(“%d\n”,i); i++; }

  34. #include <stdio.h> #include <stdlib.h> int main(){ int n,soma; printf("Entre com um numero:"); scanf("%d",&n); soma = 0; while( n > 0){ soma = soma + n ; printf("Entre com um numero:"); scanf("%d",&n); } printf("A soma eh %d\n",soma); system("PAUSE"); }

  35. #include <stdio.h> #include <stdlib.h> int main(){ int n,min; printf("Entre com um numero:"); scanf("%d",&n); min = n; while( n >= 0){ if( n < min ) min = n; printf("Entre com um numero:"); scanf("%d",&n); } printf("O menor eh %d\n",min); system("PAUSE"); }

  36. Comando do-while do<comando>|<lista_de_comando> while<condição>; i = 0; do{ printf(“%d”,i); i++; }while( i < 10 );

  37. #include <stdio.h> #include <stdlib.h> int main(){ int i; do{ printf("\n\tEscolha uma opção:\n\n"); printf("\t(1)........Masculino\n"); printf("\t(2)........Feminino\n"); printf("Entre com a sua opcao:"); scanf("%d",&i); }while( (i<1)||(i>2)); if(i==1) printf("Vc eh homem\n"); else printf("Vc eh mulher\n"); system("PAUSE"); }

  38. Loop Infinito É um loop ( repetição ) que será executado para sempre (ou não existe condição de parada ou a condição é sempre verdadeira), a não ser que seja interrompida.

  39. #include <stdio.h> #include <stdlib.h> int main(){ char c; for(;;){ printf("Vc quer continuar(S\\N)?"); c = getchar(); getchar(); if( c == 'N'){ printf("O programa vai ser interrompido!!"); break; }else{ if(c=='S') printf("Parabens vc quer continuar\n"); else printf("Vc escolheu uma opção inexistente\n"); } } }

  40. #include <stdio.h> #include <stdlib.h> int main(){ char c; while(1){ printf("Vc quer continuar(S\\N)?"); c = getchar(); getchar(); if( c == 'N'){ printf("O programa vai ser interrompido!!"); break; }else{ if(c=='S') printf("Parabens vc quer continuar\n"); else printf("Vc escolheu uma opção inexistente\n"); } } }

  41. #include <stdio.h> #include <stdlib.h> int main(){ int b,h,i,j; printf("Entre com a base:"); scanf("%d",&b); printf("Entre com a altura:"); scanf("%d",&h); for(i=1;i<=h;i++){ printf("\t"); if((i==1)||(i==h)) for(j=1;j<=b;j++) printf("*"); else{ printf("*"); for(j=1;j<=b-2;j++) printf(" "); printf("*"); } printf("\n"); } system("PAUSE"); }

  42. #include <stdio.h> #include <stdlib.h> int main(){ int h,i,j; printf("Entre com a altura:"); scanf("%d",&h); for(i=1;i<=h;i++){ for(j=1;j<=h-i;j++) printf(" "); for(j=1;j<=i;j++) printf(" *"); printf("\n"); } system("PAUSE"); }

  43. String Um sequência de caracteres terminado com um caractere nulo.Podemos acessar cada caractere através de um índice. Nesse caso vamos supor que nome = “JOAO” nome[0] = ‘J’; nome[1] = ‘O’; nome[2] = ‘A’; nome[3]= ‘O’; nome[4]= ‘\0’;

  44. #include <stdio.h> #include <stdlib.h> int main(){ char nome[20],c; printf("Entre com um o seu nome:"); scanf("%s",nome); printf("O primeiro caracter do meu nome eh %c\n",nome[0]); nome[0] = 'X'; printf("Meu nome agora eh %s\n",nome); system("PAUSE"); }

  45. #include <stdio.h> #include <stdlib.h> int main(){ char nome[15]; int x; printf("Entre com o seu nome:"); scanf("%s",nome); if((nome[0] >= 'a') && ( nome[0] <= 'z') ){ x = nome[0] - 'a'; nome[0] = 'A' + x; } printf("Seu nome eh %s\n",nome); system("PAUSE"); }

  46. #include <stdio.h> #include <stdlib.h> int main(){ char nome[15]; int i,tamanho; tamanho=0; printf("Entre com o seu nome"); scanf("%s",nome); for(i=0;nome[i]!='\0';i++) tamanho++; printf("O numero de caracteres eh %d\n",tamanho); system("PAUSE"); }

  47. #include <stdio.h> #include <stdlib.h> int main(){ char nome[15]; int i; printf("Entre com o seu nome"); scanf("%s",nome); for(i=0;nome[i]!='\0';i++){ if((nome[i] >= 'a') && ( nome[i] <= 'z') ){ x = nome[i] - 'a'; nome[i] = 'A' + x; } } printf("Seu nome eh %s\n",nome); system("PAUSE"); }

  48. #include <stdio.h> #include <stdlib.h> int main(){ char nome[20]; int d,n,p,i; scanf("%s",nome); scanf("%d",&d); n = 'Z'-'A' + 1; for(i=0;nome[i]!='\0';i++){ if(nome[i]>='A' && nome[i]<='Z'){ p = nome[i] - 'A'; p = ( p + d ) % n + 'A'; nome[i] = p; } } printf("Seu novo nome eh %s\n",nome); system("PAUSE"); }

  49. Usando a Math.h É a principal biblioteca com funções matemáticas.

  50. #include <stdio.h> #include <stdlib.h> #include <math.h> #define PI 3.1415 int main(){ double grau; printf("Entre com o grau:"); scanf("%lf",&grau); printf("seno(%4.2lf)=%4.2lf\n" , grau , sin( (grau/180)*PI ) ); printf("Co-seno(%4.2lf)=%4.2lf\n", grau , cos( (grau/180)*PI ) ); printf("2^3 = %.0lf\n" , pow(2,3)); printf("A raiz quadrada de 2 = %.4lf\n" , sqrt(2)); printf("O teto de 2.8 eh %.0lf\n", ceil(2.8) ); printf("O piso de 2.8 eh %.0lf\n", floor(2.8) ); system("PAUSE"); }

More Related