Treinamento obi
This presentation is the property of its rightful owner.
Sponsored Links
1 / 86

Treinamento - OBI PowerPoint PPT Presentation


  • 63 Views
  • Uploaded on
  • Presentation posted in: General

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

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Treinamento obi

Treinamento - OBI

Linguagem C

Wladimir Araújo Tavares


Hist rico

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.


Continua o

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++.


Caracter sticas

Compilada

Case Sensitive

Médio Nível

Sistema de tipo fraca

Permite o controle total

Estruturada

Características :


Treinamento obi

//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;

}


Observa es

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


Caracteres de controle

Caracteres de Controle:

  • \n nova linha

  • \r “enter”

  • \t tabulação (tab)

  • \b retrocesso

  • \“ aspas

  • \ \ barra

  • \a beep

  • \0 Nulo


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

printf("\tEscreva issa\bo entre \"Hello\"\n\a");

system("PAUSE");

}


C digo de formata o

Código de Formatação:

  • %c caracter

  • %d decimal

  • %f ponto flutuante

  • %s cadeia de caracteres(string)


Treinamento obi

#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");

}


Vari veis

Variáveis:

Espaço de memória de um certo tipo de

dado associado a um nome para referenciar

seu conteúdo.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

int idade;

idade = 12;

printf (" A minha idade é : %d", idade);

system("PAUSE");

return 0;

}


Tipos b sicos

Tipos Básicos:


Treinamento obi

#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");

}


Nome de vari veis

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.


Palavras chaves

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


Comando if

Comando if

if <condição>

<comando> | <lista_de_comandos>

<condição>

São expressões que admitem um valor

Verdade.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main()

{

int idade = 12;

if ( idade > 10 )

printf("Idade maior que 10\n");

system("PAUSE");

}


Operadores aritm ticos

OPERADORES ARITMÉTICOS

  • + Soma

  • - Subtração

  • * Multiplicação

  • / Divisão

  • % Resto

    Ex:

    7 % 2 = 1

    8 % 3 = 2


Exerc cios

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;


Operadores de incremento e decremento

OPERADORES DE INCREMENTO E DECREMENTO

  • ++ incrementa a variável

  • -- decrementa a variável

    Ex:

    i++;

    i = i + 1;

    i--;

    i = i - 1;


Exerc cio

Exercício:

x = 22;

y = x++;

x = ? y = ?

x = 22;

y = ++x;

x = ? y = ?


Operadores relacionais

OPERADORES RELACIONAIS

  • > maior

  • >=maior ou igual

  • < menor

  • <=menor ou igual

  • == igualdade

  • != diferença


Operadores l gicos

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


Treinamento obi

#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;

}


If else

If-else

If <condição>

<comando> | <lista_de_comandos>

else

<comando> | <lista_de_comandos>


Treinamento obi

#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;

}


Treinamento obi

#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");

}


Comando for

Comando for

for ( <início> ; <condição> ; <incremento> ) <comando>| <lista_comando>

Ex:

for(i=0;i < 10 ;i++)

printf(“%d”,i);


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Comando while

Comando while

while <condição>

<comando> | <lista_comandos>

Ex:

i = 0;

while( i < 10 ){

printf(“%d\n”,i);

i++;

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Comando do while

Comando do-while

do<comando>|<lista_de_comando>

while<condição>;

i = 0;

do{

printf(“%d”,i);

i++;

}while( i < 10 );


Treinamento obi

#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");

}


Loop infinito

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.


Treinamento obi

#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");

}

}

}


Treinamento obi

#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");

}

}

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


String

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’;


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Treinamento obi

#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");

}


Usando a math h

Usando a Math.h

É a principal biblioteca com funções matemáticas.


Treinamento obi

#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");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

#define PI 3.1415

int main(){

double r;

printf("Entre com o raio:");

scanf("%lf",&r);

printf("O comprimento eh %.2lf\n",

2*PI*r);

printf("A area eh %.2lf\n",

PI*pow(r,2));

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

int main(){

double a,b,c;

printf("Entre com os catetos:");

scanf("%lf %lf",&b,&c);

a = sqrt( pow(b,2) + pow(c,2) );

printf("hipotenusa: %.2lf\n",a);

system("PAUSE");

}


Desafio

Desafio:

Fazer um programa que resolva uma

equação do 2° grau!!


Manipula o de strings

Manipulação de Strings

  • gets

  • puts

  • strcpy

  • strcat

  • strcmp


Treinamento obi

gets()

É utilizada para a leitura de dispositivo

padrão até que o ENTER seja pressionado.

int main(){

char str[80];

gets(str);

printf(“%s”,str);

}


Treinamento obi

puts()

Escreve a string passada para ele no

dispositivo padrão de saída e coloca \n no

final.

int main(){

char str[80]=“Teste”;

puts(str);

}


Strcpy

strcpy()

strcpy(destino,origem)

Copia a string origem para a string destino.

int main(){

char str[80];

strcpy(str,"Wladimir");

printf("%s",str);

system("PAUSE");

}


Strcat

strcat()

strcat(s1,s2)

concatena as duas string.

s1 = s1 + s2;

int main(){

char str1[80],str2[80];

strcpy(str1,"O campeão eh ");

strcpy(str2,“Seu Time");

strcat(str1,str2);

printf("%s\n",str1);

system("PAUSE");

}


Strcmp

strcmp()

compara as duas strings.

strcmp(s1,s2) <0 , s1 > s2

>0 , s1 < s2

==0 , s1==s2

int main(){

char str1[80],str2[80];

strcpy(str1,"z");

strcpy(str2,"bcd");

if(strcmp(str1,str2)< 0) printf("1\n");

else if( strcmp(str1,str2) > 0 ) printf("2\n");

else printf("igual");

system("PAUSE");

}


Strlen

strlen()

Função que retorna o tamanho da string.

int main(){

char str1[80];

scanf(“%s”,str1);

printf(“O tamanho de %s eh %d”,str1,strlen(str1));

system("PAUSE");

}


Desafio1

Desafio!!

  • Inverter uma string

  • Verificar se uma string é um palíndromo.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(){

char palavra[20],c;

int i,t;

scanf("%s",palavra);

t = strlen(palavra);

for(i=0;i<t/2;i++){

c = palavra[i];

palavra[i] = palavra[t-i-1];

palavra[t-i-1] = c;

}

printf("%s\n",palavra);

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(){

char palavra[20],palindromo[20],c;

int i,t;

scanf("%s",palavra);

strcpy(palindromo,palavra);

t = strlen(palavra);

for(i=0;i< t/2;i++){

c = palavra[i];

palavra[i] = palavra[t-i-1];

palavra[t-i-1] = c;

}

if( strcmp(palindromo,palavra)==0)

printf("Palindromo\n");

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int main(){

char bin[20];

int n,i;

scanf("%d",&n);

for(i=0;n>0;i++){

bin[i] = '0' + n%2;

n = n/2;

}

bin[i]='\0';

printf("%s\n",bin);

system("PAUSE");

}


Vetores

Vetores

Geralmente um identificador está

relacionado somente a uma posição de

memória e qualquer referência a ela significa acessar

seu conteúdo de um pedaço de memória cujo

tamanho depende do seu tipo

Com esse tipo de dado podemos

associar um identificador a conjunto de

elementos de um mesmo tipo.


Treinamento obi

//Programa que calcula a média

#include <stdio.h>

#include <stdlib.h>

int main(){

float n1,n2,n3,n4,media;

printf("Entre com a 1 nota");

scanf("%f",&n1);

printf("Entre com a 2 nota");

scanf("%f",&n2);

printf("Entre com a 3 nota");

scanf("%f",&n3);

printf("Entre com a 4 nota");

scanf("%f",&n4);

media = ( n1 + n2 + n3 + n4 )/4.0;

printf("A media eh %.2f\n",media);

system("PAUSE");

}


Treinamento obi

//Programa que calcula a média

#include <stdio.h>

#include <stdlib.h>

int main(){

float n[4],media;

int i;

for(i=0;i<4;i++){

printf("Entre com a %d nota:",i+1);

scanf("%f",&n[i]);

}

media = ( n[0] + n[1] + n[2] + n[3] )/4.0

printf("A media eh %.2f\n",media);

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

int v[10],maior,menor;

for(i=0;i<10;i++){

scanf("%d",&v[i]);

}

maior = v[0];

menor = v[0];

for(i=1;i<10;i++){

if( v[i] > maior ) maior = v[i];

if( v[i] < menor ) menor = v[i];

}

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

int v[10],soma,n,i;

float media;

soma = 0 ;

for(i=0;i<10;i++){

scanf("%d",&v[i]);

soma += v[i];

}

media = soma/10.;

n = 0;

for(i=0;i<10;i++){

if(v[i] > media ) n++;

}

printf("\n%f %d\n",media , n);

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

int v[100],n,i;

char achou;

scanf("%d",&n);

if(n<=100){

for(i=0;i<n;i++){

scanf("%d",&v[i]);

}

scanf("%d",&x);

achou = 0;

for(i=0;i<n;i++){

if(x==v[i]){

achou = 1;

break;

}

}

}

system("PAUSE");

}


Matrizes multidimensional

Matrizes multidimensional

Sintaxe:

tipo nome[tamanho][tamanho]...;

Funciona como na matriz de uma dimensão

(vetor), mas tem mais de um índice.

int v[3][3];


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int main(){

int v[3][3];

int i,j,soma,l,soma_max;

for(i=0;i<3;i++){

for(j=0;j<3;j++){

printf("v[%d][%d]:",i,j);

scanf("%d",&v[i][j]);

}

}

for(i=0;i<3;i++){

soma = 0;

for(j=0;j<3;j++) soma += v[i][j];

if( soma > soma_max || i==0){

soma_max = soma;

l = i;

}

}

system("PAUSE");

}


Fun es

Funções:

É uma unidade autônoma de código de

programa que é desenhada para cumprir

uma tarefa particular.

É um subprograma.

É um bloco de código que pode ser usado

várias vezes.


Fun es sem retorno

Funções sem retorno

Quando uma função não retorna valor para

a função que o ela é declarada como void.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

void mensagem(){

printf("Essa é uma mensagem\n");

printf("Isso é só um exemplo");

}

int main(){

mensagem();

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void inverter(){

int i,t;

char c;

t = strlen(nome);

for(i=0;i<t/2;i++){

c = str[i];

nome[i] = nome[t-i-1];

nome[t-i-1]=c;

}

}

int main(){

char nome[20] = "Wladimir";

inverter(nome);

printf("Novo nome %s\n",nome);

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

void mostraIdade(int atual,int nasc){

printf("Vc completou ou completara %d anos\n",atual-nasc);

}

int main(){

int anoAtual = 2005, anoNascimento = 1984;

mostraIdade(anoAtual,anoNascimento);

system("PAUSE");

}


Fun es com retorno

Funções com retorno

Quando uma função retorna um valor para a

função que a chamou.

Logo, o tipo de retorno deve ser declarado.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int fat(int n){

int i,fat=1;

for(i=1;i<=n;i++)

fat *=i;

return fat;

}

int main(){

int n;

scanf("%d",&n)

while( n > 0 ){

printf("O fatorial eh %d",fat(n));

scanf("%d",&n)

}

system("PAUSE");

}


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

int ehprimo(int n){

int i;

if(n%2==0 && n!=2 ) return 0;

else{

for(i=3;i*i<=n;i+=2)

if(n%i==0) return 0;

return 1;

}

}

int main(){

int n;

scanf("%d",&n);

while( n > 0 ){

if( ehprimo(n) ) printf("Primo\n");

else printf("Composto\n");

scanf("%d",&n);

}

system("PAUSE");

}


Par metros formais

Parâmetros Formais

Quando uma função utiliza argumentos,

então ela deve declarar as variáveis

que aceitaram os valores dos argumentos,

sendo essas variáveis os parâmetros

formais.


Par metros reais

Parâmetros Reais

Quando uma função utiliza argumentos,

as variáveis que são passadas como

argumentos para a função são chamadas

de parâmetros reais


Vari veis locais

Variáveis locais

As variáveis que são declaradas dentro de

uma função são chamadas de locais.Na

realidade toda variável declarada entre um

bloco { } podem ser referenciadas apenas

dentro deste bloco. Elas existem apenas

durante a execução do bloco de código no

qual estão declaradas.


Vari veis globais

Variáveis Globais

São conhecidas por todo programa e podem

ser usadas em qualquer parte do código.

Permanecem com seu valor durante toda

execução do programa. Deve ser

declarada fora de qualquer função e até

mesmo antes da declaração da funçãomain.


Chamada por valor

Chamada por valor

O valor de um argumento é copiado para o

parâmetro formal da função,portanto as

alterações no processamento não alteram

as variáveis.

Os parâmetros formais são variáveis locais.


Treinamento obi

#include <stdio.h>

#include <stdlib.h>

int cont = 12;

void teste(int i){

i++;

printf("%d\n",i);

}

int main(){

printf("%d\n",cont);

teste(cont);

printf("%d\n",cont);

system("PAUSE");

}


  • Login