Baixe o app para aproveitar ainda mais
Prévia do material em texto
Introdução a C Estrutura de Dados I Profª Valéria de Carvalho Santos Universidade Estadual Paulista “Júlio de Mesquita” Exemplo #include <stdio.h> /*função main inicia execução do programa*/ int main( void){ int inteiro1, inteiro2; int soma; int a; printf(“Digite o primeiro inteiro\n”); scanf(“%d”, &inteiro1); printf(“Digite o segundo inteiro\n”); scanf(“%d”, &inteiro2); soma = inteiro1 + inteiro2; printf(“A soma é %d\n, soma”); std::cin >> a; return 0; } Vetores • Declaração • int c[12]; • int b[100], x[27]; •Inicialização • c[ 0 ] = 0; • int n[10] = {32, 27, 64, 18, 95, 14, 90, 70, 60, 37}; • int n[10] = {0}; • int n[ ] = {1, 2, 3, 4, 5}; Exemplo #include <stdio.h> int main( void){ int n[10]; int i; for( i = 0; i < 10; i++){ n[ i ] = 0; } printf( “%s%13s\n”, “Elemento”, “Valor” ); for( i = 0; i < 10; i++){ printf( “%7d%13d\n”, i, n[ i ] ); } return 0; } Ponteiros • Variáveis cujos valores são endereços de memória •Declaração: • int *countPtr, count; •Exemplo: •int y = 5; •int *yPrt; •yPtr = &y; yPtr y 5 Exemplo #include <stdio.h> int main( void){ int a; int *aPtr; a = 7; aPtr = &a; printf(“O endereço de a é %p\nO valor de aPtr é”, &a, aPtr); printf(“\n\nO valor de a é %d\nO valor de *aPtr é %d”, a, *aPtr); return 0; } Estruturas • Variáveis relacionadas agrupadas sob um único nome • Podem conter variáveis de muitos tipos de dados diferentes • Ponteiros e estruturas facilitam a formação de estruturas de dados mais complexas Estruturas • Declaração: • struct funcionario{ char nome[20]; int idade; char sexo; double salario; } chefe, subordinados[20], *funcPtr; Estruturas • Acesso aos membros da estrutura: •Operador de membro: (.) •Acessa um membro da estrutura por meio do nome da variável da estrutura •Exemplo: printf(“%d”, chefe.idade); •Operador de ponteiro: (->) •Acessa um membro da estrutura por meio de um ponteiro para a estrutura •Exemplo: printf(“%d”, funcPtr->idade); Exemplo #include <stdio.h> struct card{ char *face; char *suit; }; int main( void){ struct card aCard; struct card *cardPtr; aCard.face = “As”; aCard.suit = “Espadas”; cardPtr = &aCard; printf(“%s%s%s\n%s%s%s\n%s%s%s\n”, aCard.face, “ de “, aCard.suit, cardPtr->face, “de”, cardPtr->suit, (*cardPtr).face, “ de ” , (*cardPtr.suit) ); return 0; } Exemplo de funções #include <stdio.h> int square(int y); int main( void){ int a; int x; for(x = 1; x <= 10; x++){ printf("%d ", square(x)); } printf("\n"); std::cin >> a; return 0; } int square(int y){ return y*y; } Referência C: Como Programar, 6ª Edição Autor:Paul Deitel e Harvey Deitel
Compartilhar