• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Linguagem c parte 2
 

Linguagem c parte 2

on

  • 604 views

Linguagem C

Linguagem C

Statistics

Views

Total Views
604
Views on SlideShare
604
Embed Views
0

Actions

Likes
0
Downloads
18
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Linguagem c parte 2 Linguagem c parte 2 Presentation Transcript

    • Curso: Manutenção e Suporte em Informática Disciplina: Linguagem de Programação Professor: Mauro Jansen Linguagem C Procedimentos e funções, vetores, matrizes e registros (estruturas)
    • Procedimentos e funções em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 2
    • Procedimentos e funções Também chamados de sub-programas ou rotinas, são programas que executam uma função específica que é acessada diversas vezes Procedimento: não retorna valor ao programa que o chamou Função: retorna valor Exemplos: função fatorial (calcula o fatorial de um número) Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 3
    • Por que usar funções? Reaproveitar código já criado (por você ou outros programadores) Evitar repetição de código dentro do mesmo programa Separar o programa em blocos, facilitando a leitura, o entendimento e a manutenção Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 4
    • Procedimentos e funções em C A linguagem C tem apenas funções O tipo da função diz se ela retorna ou não valor: Tipo void: função que não retorna valor Outros tipos básicos (int, float, etc.): funções que retornam valor Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 5
    • A função main() Como já vimos, todo programa em C tem pelo menos uma função: #Include <biblioteca1.h> #Include <biblioteca2.h> ... Void main() { <Declaração de variáveis> ... <comandos> ... } Inclusão de arquivo de bibliotecas de comandos Função main(): é obrigatória. É a primeira função chamada quando o programa é iniciado Delimitadores de inicio e fim de bloco de comandos Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 6
    • Definindo funções em C Sintaxe: tipo nome da função(tipo parâmetro1,...,tipo parâmetroN) { // comandos da função } Os parâmetros são os dados que serão usados pela função para realizar sua operação ou retornar algum resultado A lista de parâmetros é opcional, mas se for usada deve ser especificado o tipo de cada parâmetro Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 7
    • Chamada de funções void main() { // comando anterior à chamada funcao1(2,3) // comando posterior à chamada } Prof. Mauro Jansen void funcao1(int a,int b) { // comandos da função } Linguagem de Programação Linguagem C – parte 1 8
    • Exemplo de função #Include <stdio.h> float media(float nota1,float nota2) { return( (nota1+nota2)/2); } void main() { printf(“%fn”,media(8,9)); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 9
    • Vetores em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 10
    • Vetor É como uma variável dividida em vários pedaços, onde cada pedaço é acessado através de um número chamado índice Na linguagem C, o primeiro elemento é o de índice zero 0 Prof. Mauro Jansen 1 2 ... Linguagem de Programação Linguagem C – parte 1 N 11
    • Declaração de um vetor Sintaxe: tipo <nome>[<tamanho>]; Exemplos: float notas[30]; // vetor p/até 30 notas char nome[50]; // vetor p/nome de até 50 caracteres // podemos também declarar e já inicializar o vetor: Float precos[4]={10.25, 11.55, 12.55, 20.65}; Note que as STRINGS (cadeia de caracteres) em C, são vetores de caracteres Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 12
    • Usando vetores int i; float notas[30]; char nome[50]; // vetor p/até 30 notas // vetor p/nome de até 50 caracteres // podemos também declarar e já inicializar o vetor: Float precos[4]={10.25, 11.55, 12.55, 20.65}; notas[0]=9.5; // guarda valor numa pos.específica // usando um vetor no comando de entrada de dados: scanf(“%f”,&notas[1]); printf(“%fn”,notas[0]); // acessa o valor de uma pos. // especificando indice com variável: i=1; printf(“%fn”,notas[i]); Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 13
    • Exemplo – preços de produtos #include <stdio.h> #define MAX 20 int main() { int pos; float precos[MAX],total; for(pos=0;pos<MAX;pos++) { printf("Digite o preco do produto %d: ",pos); scanf("%f",&precos[pos]); } printf("Preços digitados:n"); total=0; for(pos=0;pos<MAX;pos++) { printf("%fn",precos[pos]); total+=precos[pos]; } printf("Total: %fn",total); } # Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 14
    • Matrizes Similar ao vetor (variável dividida em vários pedaços), com a diferença que temos mais de uma dimensão 0,0 1,0 ... N,0 Prof. Mauro Jansen 0,1 1,1 ... N,1 0,2 1,2 ... N,2 ... ... ... ... Linguagem de Programação Linguagem C – parte 1 0,M 1,M ... N,M 15
    • Declaração de uma matriz Sintaxe: tipo <nome>[<tam.1>][tam.2]..[tam.N]; Exemplos: float notas[30][3]; // matriz p/até 3 notas de 30 alunos nome[50][10]; // matriz nomes (até 50 car.) de 10 pessoas Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 16
    • Usando matrizes int i,j; float notas[30][3]; // matriz p/até 3 notas de 30 alunos nome[50][10]; // matriz nomes (até 50 car.) de 10 pessoas notas[0][0]=9.5; // guarda valor numa pos.específica // usando matriz no comando de entrada de dados: scanf(“%f”,&notas[0][1]); printf(“%fn”,notas[0][1]); // acessa o valor // especificando indice com variável: i=0; j=1; printf(“%fn”,notas[i][j]); Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 17
    • Exemplo – notas de alunos de uma turma de 10 alunos, com 3 notas de cada #include <stdio.h> #define MAX 10 int main() { int a,n; float notas[MAX][3]; for(a=0;a<MAX;a++) { for(n=0;n<3;n++) { printf("Digite a nota %d do aluno %d: ",n,a); scanf("%f",&notas[a][n]); } printf("n"); } } # Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 18
    • Registros (estruturas) em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 19
    • Registros (estruturas) Variável composta por um conjunto de sub-itens (membros da estrutura) que não precisam ser do mesmo tipo de dados Exemplo: Dados de uma Conta Bancária ITEM DE DADO VALOR Número: 2245 Tipo: Especial Cliente: José da Silva Saldo: R$5.250,00 Neste registro, representamos uma conta bancária, que tem os seguintes tipos de dados: Inteiro (Número) Real (Saldo e Limite) Literal (Tipo e Cliente) Limite: R$950,00 Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 20
    • Definindo uma estrutura em C É feita em duas fases Definição da estrutura (novo tipo de dados) Definição da variável do tipo criado para a estrutura // definição da estrutura (novo tipo de dados) Typedef struct { tipo <nome do elemento 1>; tipo <nome do elemento 2>; ... tipo <nome do elemento N>; } <nome da estrutura>; // declaração da variável do tipo estrutura <nome da estrutura> <nome da variável>; Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 21
    • Usando estruturas Para referenciar um valor, mencionamos o nome da estrutura e do elemento separados por um ponto: <nome da estrutura>.<nome do elemento>; Exemplo: conta.numero=123; Conta.tipo=“Normal”; Conta.cliente=“João da Silva”; Conta.saldo=1000; printf(“%fn”,conta.saldo); Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 22
    • Vetor de estrutura O uso de esturutras torna-se mais efetivo quando associado a vetores Podemos criar um vetor de estrutura, podendo guardar dados de vários elementos distintos. Exemplos: 100 registros de contas bancárias 40 registros de alunos de uma turma Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 23
    • Exemplo: notas de alunos de uma turma usando estrutura #include <stdio.h> #define MAX 10 int main() { typedef struct { char nome[50]; float nota1; float nota2; } reg_aluno; reg_aluno alunos[MAX]; int c; for(c=0;c<MAX;c++) { printf("Digite os dados do aluno %d:n",c+1); printf("Nome: "); scanf("%s",&alunos[c].nome); printf("Nota 1: "); scanf("%f",&alunos[c].nota1); printf("Nota 2: "); scanf("%f",&alunos[c].nota2); printf("n"); } } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 24