Linguagem C (continuação)

Tamanho: px
Começar a partir da página:

Download "Linguagem C (continuação)"

Transcrição

1 Linguagem C (continuação) Funções, arrays e ponteiros Slides adaptados, inspirados, muitos copiados dos slides do professor Pedro Pereira Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca

2 Funções Porquê? Divisão: Dividir para reinar Problemas em sub-problemas Compilação separada Testar separadamente Trabalho por equipas Reutilização noutros contextos Não repetir código Esconder detalhes de implementação Abstracção Declaradas antes da utilização Podem só ser definidas depois Assinatura: nome tipo dos parâmetros (nomes opcionais) tipo do retorno Não é permitida a repetição de nomes bib: K&R, cap. 4 {.1-.4,.8-.9 int tolower( int ); int main() { Declaração int i; for( i= A ; i<= Z ; ++i ) printf( %c - %c\n, i,tolower(i)); return 0; Definição int tolower(int c) { if (c >= 'A' && c <= 'Z') return c-'a'+'a'; return c; 2

3 Chamada e retorno Na chamada (call) Valores dos argumentos actuais são copiados para os parâmetros da função (passagem por valor) Correspondência por ordem No retorno O valor da expressão de retorno é copiado Na ausência de retorno, o tipo de retorno da função deverá ser void main i c tolower bib: K&R, cap. 4 {.1-.4,.8-.9 int tolower(int c) { if (c >= 'A' && c <= 'Z') return c-'a'+'a'; return c; Declaração e definição int main() { int i; for( i= A ; i<= Z ; ++i ) printf( %c - %c\n, i,tolower(i)); return 0; tolower(i) res 3

4 Variáveis globais, variáveis locais e parâmetros Variáveis globais Partilhadas por todas as funções Tempo de vida do programa. Criadas antes de ser chamada a função main() Destruídas depois de main() retornar Por omissão são inicializadas com 0 Variáveis locais e parâmetros Só a função tem acesso Tempo de vida da execução da função Criadas quando a função é chamada Destruídas quando a função retorna Variáveis locais não são inicializadas int var; bib: K&R, cap. 4 {.1-.4,.8-.9 [=<constant expression>] int tolower(int c) { var++; if (c >= 'A' && c <= 'Z') return c-'a'+'a'; return c; int main() { int i; for( i= A ; i<= Z ; ++i ) printf( %c - %c\n, i,tolower(i)); var++; return 0; 27 Contém a última informação presente na posição de memória associada à variável 4

5 Exercício: Top10 Função que apresenta na consola os 10 maiores inteiros introduzidos pelo standard input #include <stdio.h> void print_top_10 () {... int main() { print_top_10(); return 0; top10.c 5

6 Arrays Reserva memória para N elementos do mesmo tipo Dimensão N é fixa Não existe afectação de arrays Acesso a cada elemento por índice (de 0 a N-1) Inicialização Permite inicialização explícita int a[4] = {1,0,0,1; int b[] = {1,2,3; int c[10] = {10,20,30; Dimensão implícita int top[10]; 0xbfec06a8 0xbfec06ac 0xbfec06b0... 0xbfec06cc top: Restantes elementos iniciados com 0 top[0] top[1] top[2] top[3] top[4] top[5] top[6] top[7] top[8] top[9] Diferenças para os arrays do Java Não têm que ser alojados dinamicamente Não existe o campo length Os limites da indexação não são verificados Não existe int dim = top.length; top[10] = 0; O compilador não dá erro 6

7 Exercício: Top10 Função que apresenta na consola os 10 maiores inteiros introduzidos pelo standard input int readint() {... void print_top_10() { int top[10]; int v, r, i; int size = 0; top10.c while ((r=readint())!= EOF) {... printf("top 10:\n"); for (i = 0; i < size; i++) printf("%2d - %d\n", i, top[i]); 7

8 Ponteiros Um ponteiro corresponde a um endereço de uma posição de memória int top[10]; int *p = top; /* &top[0] */ printf( p=%p,p); O operador unário & significa endereço de Apenas aplicável a objectos em memória O operador unário * significa indirecção ou desreferência Aplicado a um apontador e acede-se a um objecto em memória int i = 10, y; int *ip = &i, *iq; *ip = *ip + 10; /* *ip+=10 */ y = ++*ip; iq = ip; y = *++ip; i=21 ip: bib: K&R, cap. 5 {.1-.5 p: 0xbfec06a8 top: 10 i: top[0] top[1] top[2] top[3] top[4] top[5] top[6] top[7] top[8] top[9] 8

9 Ponteiros e const Ponteiro para char não alterável (const char) Ponteiro não alterável para char (const ptr) const char *p1; char * const p2; char c; p1 = &c; *p2 = A ; *p1 = B ; p2 = &c; 9

10 Arrays versus ponteiros O nome do array é um ponteiro não alterável para o primeiro elemento a[i] *(a+i) bib: K&R, cap. 5 {.1-.5 char a[5]; char *pa; pa = a; /* pa = &a[0]; */ a = pa; pa++; a++ a[i] *(pa+i) &a[i] pa+i pa: a: a[0] Um apontador que não aponte para nada deverá conter o valor 0 NULL definido no header stdio.h 10

11 strings Sequência de caracteres terminada com 0 (terminador) A expressão PSC Reserva memória estática para um array de 4 chars O array tem os códigos dos caracteres e um zero O seu valor é o endereço para o primeiro carácter O tipo é const char * PSC P S C 0 localizada em memória estática const char *s = PSC ; s: P S C 0 char s[] = PSC ; s: P S C 0 copy P S C 0 char s[5] = { P, S, C, 0 ; s: P S C 0 11

12 Exemplo strcpy void strcpy(char *dst, char *src) { int i = 0; while ((dst[i] = src[i])!= \0 ) i++; bib: K&R, cap. 5 {.5 void strcpy(char *dst, char *src) { while ((*dst = *src)!= \0 ) { dst++; src++; void strcpy(char *dst, char *src) { while ((*dst++ = *src++)!= \0 ) ; void strcpy(char *dst, char *src) { while (*dst++ = *src++) ; 12

13 Aritmética de ponteiros T *p1, *p2; Soma com valor inteiro N Posição N*sizeof(T) bytes à frente ++p1; p2 = p1 + 10; p1 += 2; Subtracção com valor inteiro N Posição N*sizeof(T) bytes a trás Diferença entre ponteiros Distância em elementos de sizeof(t) bytes --p1; p2 = p1-10; p1 -= 2; int dif; dif = p2 - p1; Não é permitido: Adicionar, multiplicar, dividir dois ponteiros Mascarar, shiftar um ponteiro Adicionar com um float ou double 13

14 Exercício: Top10 Função que apresenta na consola os 10 maiores inteiros introduzidos pelo standard input int readint(int *pi) {... void print_top_10() { int top[10]; int v, r, i; int size = 0; top10.c while ((r=readint(&v))!= EOF) {... printf("top 10:\n"); for (i = 0; i < size; i++) printf("%2d - %d\n", i, top[i]); 14

Controlo de Execução. K&R: Capitulo 3

Controlo de Execução. K&R: Capitulo 3 Controlo de Execução K&R: Capitulo 3 IAED, 2009/2010 Controlo de Execução Instruções e Blocos if else-if switch Ciclos: Instruçõeswhile e for Instruçãodo-while break e continue goto e labels 2 IAED, 2009/2010

Leia mais

O que é um apontador em C (type pointer in C)?

O que é um apontador em C (type pointer in C)? O que é um apontador em C (type pointer in C)? Um apontador é uma variável que contém um endereço de outra variável. int x = 10;//variável inteira iniciada com o valor 10 int *px = &x;//variável apontadora

Leia mais

ponteiros INF Programação I Prof. Roberto Azevedo

ponteiros INF Programação I Prof. Roberto Azevedo ponteiros INF1005 -- Programação I -- 2016.1 Prof. Roberto Azevedo razevedo@inf.puc-rio.br ponteiros tópicos o que são ponteiros operadores usados com ponteiros passagem de ponteiros para funções referência

Leia mais

Alocação Dinâmica em C

Alocação Dinâmica em C Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Alocação Dinâmica em C Profa Rosana Braga Adaptado de material preparado pela profa Silvana Maria Affonso de Lara

Leia mais

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011

Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Estruturas de Dados Aula 2: Estruturas Estáticas 02/03/2011 Tipos Básicos Quantos valores distintos podemos representar com o tipo char? Operadores de Incremento e Decremento ++ e -- Incrementa ou decrementa

Leia mais

ALGORITMOS E ESTRUTURAS DE DADOS CES-11

ALGORITMOS E ESTRUTURAS DE DADOS CES-11 ALGORITMOS E ESTRUTURAS DE DADOS CES-11 Prof. Paulo André Castro pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac IECE - ITA Revisão CES-11 Tipos escalares primitivos Tipos constituídos

Leia mais

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros

Métodos Computacionais. Funções, Escopo de Variáveis e Ponteiros Métodos Computacionais Funções, Escopo de Variáveis e Ponteiros Tópicos da Aula Hoje vamos detalhar funções em C Escrevendo funções Comando return Passagem de argumentos por valor Execução de uma função

Leia mais

Referências. Linguagem C. Tipos de variáveis em XC8. Tipos de variáveis. Tipos de variáveis em XC 8 Exemplo. Radicais numéricos em C

Referências. Linguagem C. Tipos de variáveis em XC8. Tipos de variáveis. Tipos de variáveis em XC 8 Exemplo. Radicais numéricos em C Referências Linguagem C Jun Okamoto Jr. Kernighan, Brian W. and Ritchie, Dennis M. The C Programming Language (ANSI C); Prentice Hall; 2ª Edição; 1988 Microchip Technology Inc. MPLAB XC8 C Compiler User

Leia mais

Módulo 5 Vetores e Alocação Dinâmica

Módulo 5 Vetores e Alocação Dinâmica Estruturas de Dados Módulo 5 Vetores e Alocação Dinâmica 1/9/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora

Leia mais

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes?

Sumário. Introdução à Ciência da Computação. Ponteiros em C. Introdução. Definição. Por quê ponteiros são importantes? Introdução à Ciência da Computação Ponteiros em C Prof. Ricardo J. G. B. Campello Sumário Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C Operações Ponteiros

Leia mais

Listas (cont.) K&R: Capitulo 6. Lista Simplesmente Ligada IAED, 2012/2013. Conjunto de nós. Cada nó contém. head NULL. typedef struct node {

Listas (cont.) K&R: Capitulo 6. Lista Simplesmente Ligada IAED, 2012/2013. Conjunto de nós. Cada nó contém. head NULL. typedef struct node { Listas (cont.) K&R: Capitulo 6 Lista Simplesmente Ligada Conjunto de nós head NULL Cada nó contém Informação útil Ponteiro para o próimo nó typedef struct node Item item; struct node *net; *link; Item

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição

Leia mais

Linguagem C Ficheiros Compilação Separada

Linguagem C Ficheiros Compilação Separada Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir

Leia mais

Introdução à Programação em C (II)

Introdução à Programação em C (II) Introdução à Programação em C (II) Resumo Streams de Texto Leitura e escrita de caracteres Caracteres como números inteiros Exemplos Cópia de Ficheiros Contagem de Caracteres Contagem de Linhas Contagem

Leia mais

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos.

Strings. Introdução. Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. Introdução Definição de strings. Criação/Declaração de strings. Inicialização de strings. Manipulação de strings. Exemplos. 1 definições Uma string é uma sequência, um conjunto, ou uma cadeia de caracteres.

Leia mais

Programação: Vetores

Programação: Vetores Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Linguagem C Professor: André de Carvalho Aula de hoje Introdução Tipos compostos Tipo enumeração Conclusão Tipos compostos A Linguagem C permite criar tipos de dados definíveis

Leia mais

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1

Linguagem C: Ponteiros. Prof. Leonardo Barreto Campos 1 Linguagem C: Ponteiros Prof. Leonardo Barreto Campos 1 Sumário Ponteiros; Variáveis ponteiros; Operadores de ponteiros; Expressões com ponteiros; Atribuição de ponteiros; Aritmética de ponteiros; Comparação

Leia mais

Introdução a linguagem C. Introdução à Programação 06/07

Introdução a linguagem C. Introdução à Programação 06/07 Introdução a linguagem C Introdução à Programação 06/07 A LINGUAGEM DE PROGRAMAÇÃO C A linguagem C foi criada, na década de setenta, por Dennis M. Ritchie; Apesar de se considerar uma linguagem de alto

Leia mais

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",

Leia mais

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Introdução à Linguagem C Eduardo Simões de Albuquerque Instituto de Informática UFG 13/03/2006 1 História Inventada e desenvolvida por Dennis Ritchie em um DEC- PDP 11 Originária de: BCPL desenvolvida

Leia mais

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. 1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras

Leia mais

Funções em Linguagem C Parte II

Funções em Linguagem C Parte II Slides inicialmente preparados pelo Prof. Dr. Claudio Fabiano Motta Toledo Funções em Linguagem C Parte II Profa. Dra. Elisa Yumi Nakagawa 1. Semestre 2017 Sumário Introdução a Ponteiros Escopo de Variáveis

Leia mais

O vetor é provavelmente um dos mais simples e importantes tipos agregados. Através do seu uso, podemos

O vetor é provavelmente um dos mais simples e importantes tipos agregados. Através do seu uso, podemos Cláudio C. Rodrigues Faculdade da Computação -UFU LINGUAGEM C 04: VETORES, STRINGS E MATRIZES Faculdade da Computação - UFU 1 Introdução & Objetivo O vetor é provavelmente um dos mais simples e importantes

Leia mais

Estruturas de Dados Aulas 3 e 4: Uso da. 14/03/2011 e 16/03/2011

Estruturas de Dados Aulas 3 e 4: Uso da. 14/03/2011 e 16/03/2011 Estruturas de Dados Aulas 3 e 4: Uso da memória e Vetores 14/03/2011 e 16/03/2011 Uso da memória Existem 3 maneiras de reservar o espaço da memória: Variáveis globais (estáticas) Espaço existe enquanto

Leia mais

Linguagem C: funções e ponteiros. Prof. Críston Algoritmos e Programação

Linguagem C: funções e ponteiros. Prof. Críston Algoritmos e Programação Linguagem C: funções e ponteiros Prof. Críston Algoritmos e Programação Funções Recurso das linguagens de programação que permite dar um nome para um conjunto de instruções Facilita a reutilização de algoritmos

Leia mais

Tipos Abstratos de Dados. Estrutura de Dados

Tipos Abstratos de Dados. Estrutura de Dados Tipos Abstratos de Dados Tipo Abstrato de Dados ou TAD Idéia principal: desvincular o tipo de dado (valores e operações) de sua implementação: O que o tipo faz e não como ele faz! Vantagens da desvinculação:

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 04 Alocação Dinâmica Edirlei Soares de Lima Vetores - Declaração e Inicialização Declaração de um vetor: int meu_vetor[10]; Reserva um espaço de memória

Leia mais

Métodos Computacionais

Métodos Computacionais Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento

Leia mais

Introdução à Programação em C

Introdução à Programação em C Introdução à Programação em C Tipos e Operadores Elementares Estruturas de Controlo Resumo Novidades em C Exemplo: Factorial Tipos de Dados Básicos Saltos Condicionais: if-then-else Valor de retorno de

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Linguagem C Aula de hoje Introdução Vetores (revisão) Relacionamento entre vetores e ponteiros Professor: André de Carvalho Definição: coleção de valores de dados individuais com

Leia mais

Estrutura do programa

Estrutura do programa Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }

Leia mais

Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função.

Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função. Engenharia informatica Escreva a função e_caracter que verifica se um determinado caracter é um numero ou não. Escreva um Programa de teste da função. #include Int e_caracter (char c) { Return(

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação Linguagem C++: arrays - aula I Bruno Emerson Gurgel Gomes 1 1 Instituto Federal de Educação, Ciência e Tecnologia do RN (IFRN) 2012 Bruno Gomes (IFRN) Fundamentos de Programação

Leia mais

Linguagem C Princípios Básicos (parte 1)

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

Linguagem C: Introdução

Linguagem C: Introdução Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais

Leia mais

UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 1º Semestre 2014/2015

UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 1º Semestre 2014/2015 UNIVERSIDADE LUSÓFONA DE HUMANIDADES E TECNOLOGIAS 1º Semestre 2014/2015 Programação em C 15/01/2015 Resolução 1. Descreva, em Português, cada uma das seguintes declarações em C: 1.1. char str[512]; Array

Leia mais

C++ - Matrizes. Observ.: C++ não avisa quando o limite de uma matriz foi excedido. Providenciar a verificação é responsabilidade do programador.

C++ - Matrizes. Observ.: C++ não avisa quando o limite de uma matriz foi excedido. Providenciar a verificação é responsabilidade do programador. C++ - Matrizes É um conjunto de variáveis, do mesmo tipo, referenciadas por um único nome, onde cada variável é diferenciada por meio de um número entre colchetes chamado índice. Declaração : tipo nome

Leia mais

Programação Imperativa. Lição n.º 16 A pilha de execução

Programação Imperativa. Lição n.º 16 A pilha de execução Programação Imperativa Lição n.º 16 A pilha de execução A pilha de execução Registos de execução. Arrays locais. Caso da alocação dinâmica. Segmento de dados. 11/17/16 Programação Imperativa 2 A pilha

Leia mais

Introdução à linguagem C++

Introdução à linguagem C++ Estrutura de Dados e Algoritmos e Programação e Computadores II Aula 2: Introdução à linguagem C++ Introdução à linguagem C++ Conceitos básicos: variáveis, tipos de dados, constantes, I/O, etc. Estruturas

Leia mais

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento Hello World Linguagem C printf("hello world!\n"); main é a função principal, a execução do programa começa por ela printf é uma função usada para enviar dados para o vídeo Palavras Reservadas auto double

Leia mais

1 Exercícios com ponteiros

1 Exercícios com ponteiros Computação para Informática Funções e Ponteiros1 EXERCÍCIOS COM PONTEIROS Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Aula Prática - Funções e ponteiros O objetivo desta aula prática

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: ponteiros e alocação dinâmica Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: ponteiros e alocação dinâmica Prof. Renato Pimentel 1 Ponteiros 2 Prof. Renato Pimentel 1 Ponteiros: introdução Toda a informação

Leia mais

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná

Matrizes em C. Lucas Ferrari de Oliveira Professor Adjunto. Universidade Federal do Paraná em C Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Uma matriz é uma coleção de variáveis do mesmo tipo que é referenciada por um nome comum; Em C todas as matrizes consistem

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br

Leia mais

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio)

Módulo 1. Introdução. AEDS I C++ (Rone Ilídio) Módulo 1 Introdução AEDS I C++ (Rone Ilídio) Introdução Linguagens de Programação Fonte Compilador Executável SO I Hardware C++ - Características Evolução do C, ou seja, possui a mesma sintaxe É uma linguagem

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informações

Leia mais

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015

INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C 02/23 INTRODUÇÃO Criada em 1972 na AT&T Bell Labs É uma das linguagens mais populares. Existem poucas arquiteturas

Leia mais

Curso C: Ponteiros e Arrays

Curso C: Ponteiros e Arrays Universidade de Brasília Departamento de Ciência da Computação Curso C: Ponteiros e Arrays Prof. Ricardo Pezzuol Jacobi rjacobi@cic.unb.br Ponteiros um ponteiro Ž uma vari vel que contžm o endere o um

Leia mais

Introdução à Computação MAC0110

Introdução à Computação MAC0110 Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 2 Variáveis e Atribuições Memória Principal: Introdução Vimos que a CPU usa a memória principal para guardar as informações que estão

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores

Leia mais

Funções de Entrada e Saída

Funções de Entrada e Saída inicio Escrita no ecrã (Saída de dados) Escrever( introduza o valor do raio ) Raio Leitura do valor do raio S Raio < 0 N O utilizador insere o valor do raio (Entrada de dados do teclado) Escrita no ecrã

Leia mais

TÉCNICO DE INFORMÁTICA - SISTEMAS

TÉCNICO DE INFORMÁTICA - SISTEMAS 782 - Programação em C/C++ - estrutura básica e conceitos fundamentais Linguagens de programação Linguagem de programação são conjuntos de palavras formais, utilizadas na escrita de programas, para enunciar

Leia mais

Linguagem C Funções. André Tavares da Silva.

Linguagem C Funções. André Tavares da Silva. Linguagem C Funções André Tavares da Silva andre.silva@udesc.br Funções É uma coleção de comandos identificados por um nome (identificador); As funções executam ações e podem retornar valores; main, printf

Leia mais

Programação II. Introdução à Linguagem C

Programação II. Introdução à Linguagem C Programação II Introdução à Linguagem C Um Pouco da História da Linguagem C Origem: década de 70 (Dennis Ritchie) BCPL B C. Prover acesso de baixo nível ao hardware (CPU, I/Os e periféricos) e se entender

Leia mais

LINGUAGEM C: ARRAY: VETORES E MATRIZES

LINGUAGEM C: ARRAY: VETORES E MATRIZES LINGUAGEM C: ARRAY: VETORES E MATRIZES Prof. André Backes POR QUE USAR ARRAY? As variáveis declaradas até agora são capazes de armazenar um único valor por vez. Sempre que tentamos armazenar um novo valor

Leia mais

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos

Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Instituto Politécnico de Setúbal Escola Superior de Tecnologia Departamento de Sistemas e Informática Laboratório 4 Correcção de erros sintácticos e tipos de dados primitivos Disciplina de Introdução à

Leia mais

Trabalho Linguagem e Programação de Compiladores

Trabalho Linguagem e Programação de Compiladores Trabalho Linguagem e Programação de Compiladores Responda as questões. Os exercícios deverão ser desenvolvidos utilizando as estruturas apresentadas em aula e adequadas para cada problema. Forma de entrega:

Leia mais

Vetores. e o programa deverá ler os valores separadamente:

Vetores. e o programa deverá ler os valores separadamente: Vetores Vetor é um tipo de dado usado para representar uma certa quantidade de variáveis de valores homogêneos (do mesmo tipo). Imagine o seguinte problema: calcular a média das notas da prova de 5 alunos.

Leia mais

Métodos Computacionais. Comandos Condicionais e de Repetição em C

Métodos Computacionais. Comandos Condicionais e de Repetição em C Métodos Computacionais Comandos Condicionais e de Repetição em C Tópicos da Aula Hoje vamos acrescentar comportamentos mais complexos a programas em C Comandos Condicionais if-else switch Comandos de Repetição

Leia mais

BCC202 - Estrutura de Dados I

BCC202 - Estrutura de Dados I BCC202 - Estrutura de Dados I Aula 02: Alocação Dinâmica de Memória Reinaldo Fortes Universidade Federal de Ouro Preto, UFOP Departamento de Ciência da Computação, DECOM Website: www.decom.ufop.br/reifortes

Leia mais

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C 1 2 Repetição 1 Enquanto 'C' é verdadeira Fazer? 3 Repetição 1 Enquanto 'C' é verdadeira Fazer? while (C)?; 4 Enunciado: Construa um algoritmo para mostrar os 100

Leia mais

Linguagem de Programação I. Aula 10 Funções

Linguagem de Programação I. Aula 10 Funções Linguagem de Programação I Aula 10 Funções Da Aula Anterior Tipos de dados básicos e operadores em C Declaração de variáveis e modificadores de tipo Estruturas de Controle Arrays unidimensionais Geração

Leia mais

C++ - Funções. Forma geral das funções C++

C++ - Funções. Forma geral das funções C++ C++ - Funções Conjunto de instruções para executar uma tarefa particular, agrupadas numa unidade com um nome para referenciá-las. O código é agregado ao programa uma única vez e pode ser executado muitas

Leia mais

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis

Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for

Leia mais

Tipos de Dados, Variáveis e Entrada e Saída em C. DCC 120 Laboratório de Programação

Tipos de Dados, Variáveis e Entrada e Saída em C. DCC 120 Laboratório de Programação Tipos de Dados, Variáveis e Entrada e Saída em C DCC 120 Laboratório de Programação Variáveis Uma variável representa um espaço na memória do computador para armazenar um determinado tipo de dado. Em C,

Leia mais

Computação 2. Aula 5. Profª. Fabiany defines vetor, strings e matriz por parâmetros de função

Computação 2. Aula 5. Profª. Fabiany defines vetor, strings e matriz por parâmetros de função Computação 2 Aula 5 defines vetor, strings e matriz por parâmetros de função Profª. Fabiany fabianyl@utfpr.com.br #define A diretiva #define define um identificador e uma string que o substituirá toda

Leia mais

Modularidade - Fun ções e Procedimentos

Modularidade - Fun ções e Procedimentos Modularidade - Fun ções e Procedimentos José Gustavo de Souza Paiva Problema Em diversas situa ções, é preciso executar uma tarefa específica diversas vezes em um programa, variando apenas os dados de

Leia mais

INF 1005 Programação I

INF 1005 Programação I INF 1005 Programação I Aula 12 Cadeia de Caracteres (Strings) Edirlei Soares de Lima Caracteres Até o momento nós somente utilizamos variáveis que armazenam números (int, float ou

Leia mais

11 - Estrutura de um programa em C

11 - Estrutura de um programa em C 11 - Estrutura de um programa em C directivas para o compilador { main ( ) declarações instruções } -É possível utilizar comentários, exemplo: /* Comentário */ que não são traduzidos pelo compilador, pois

Leia mais

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes Introdução à Programação Introdução a Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Introdução Variáveis Tipos de dados Operadores e Expressões: Operadores

Leia mais

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Linguagem C Controle do Fluxo de Execução. Lógica de Programação Linguagem C Controle do Fluxo de Execução Lógica de Programação Caro(a) aluno(a), Aqui começaremos a escrever os nossos primeiros programas em uma Linguagem de Programação. Divirta-se!!! Estrutura Seqüencial

Leia mais

Introdução à Programação em C (I)

Introdução à Programação em C (I) Introdução à Programação em C (I) Factorial Definição de função para cálculo de factorial Scheme (define (factorial n) (if (= n 1) 1 (* n (factorial (- n 1))))) C int factorial (int n) { if (n == 1) return

Leia mais

Revisão C++ - Parte 1

Revisão C++ - Parte 1 Revisão C++ - Parte 1 Prof. Gustavo Leitão Campus Natal Central Disciplina Programação para Ambiente de Redes 5/3/2010 Objetivo da Aula 5/3/2010 5/3/2010 OBJETIVO DA AULA Revisar os principais comandos

Leia mais

Introdução à Computação (IC) Linguagem C: Variáveis e Constantes

Introdução à Computação (IC) Linguagem C: Variáveis e Constantes Introdução à Computação (IC) Linguagem C: Variáveis e Constantes Prof.ª Dr.ª Symone Gomes Soares Alcalá Universidade Federal de Goiás (UFG) Regional Goiânia (RG) Campus Aparecida de Goiânia (CAP) Faculdade

Leia mais

Elementos de Linguagem C

Elementos de Linguagem C Elementos de Linguagem C Parte II Elementos de linguagem C Parte II 1 Macros O pré-processador da linguagem C suporta a substituição de macros, criadas com #define nome_macro texto de substituição As macros

Leia mais

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica.

Computação L2. Linguagem C++ Observação: Material Baseado na Disciplina Computação Eletrônica. Computação L2 Linguagem C++ ovsj@cin.ufpe.br Observação: Material Baseado na Disciplina Computação Eletrônica. Alfabeto São os símbolos ( caracteres ) permitidos na linguagem: Letras (maiúsculas e minúsculas);

Leia mais

1 Exercícios com ponteiros

1 Exercícios com ponteiros Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Oitava Aula Prática - 29 de outubro de 2010 O objetivo desta aula prática é exercitar ponteiros e funções. 1 Exercícios com ponteiros

Leia mais

quadrado(a)*0.5 -((a+2)*f(x,(1.0+n)/x)) Arquitectura de Computadores (2008/2009) - Linguagem C - Expressões 2

quadrado(a)*0.5 -((a+2)*f(x,(1.0+n)/x)) Arquitectura de Computadores (2008/2009) - Linguagem C - Expressões 2 Linguagem C Expressões Expressões em C Cast, condições, atribuições Operadores lógicos de bits Precedência dos operadores Expressões em C Uma expressão é a forma de calcular um valor num programa: quadrado(a)*0.5

Leia mais

Lição 4 Fundamentos da programação

Lição 4 Fundamentos da programação Lição 4 Fundamentos da programação Introdução à Programação I 1 Objetivos Ao final desta lição, o estudante será capaz de: Identificar as partes básicas de um programa em Java Reconhecer as diferenças

Leia mais

5. Vetores e alocação dinâmica

5. Vetores e alocação dinâmica 5. Vetores e alocação dinâmica W. Celes e J. L. Rangel 5.1. Vetores A forma mais simples de estruturarmos um conjunto de dados é por meio de vetores. Como a maioria das linguagens de programação, C permite

Leia mais

INTRODUÇÃO A LINGUAGEM C

INTRODUÇÃO A LINGUAGEM C INTRODUÇÃO A LINGUAGEM C Aula 01 Programação em Microinformática Prof. Allbert Velleniche de Aquino Almeida E-mail: professor@allbert.com.br Site: http://www.allbert.com.br Histórico O C nasceu na década

Leia mais

1) Operadores de auto incremento ++ e auto decremento --

1) Operadores de auto incremento ++ e auto decremento -- Aula 09 - Operadores de auto incremento e auto decremento, atribuição múltipla, atribuição na declaração, atribuição resumida e algumas regras de boa programação. 1) Operadores de auto incremento ++ e

Leia mais

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa:

Algoritmos. Algoritmos. Linguagem de programação. Conceitos. Conceitos. Conceitos. Sintaxe do comando para incluir bibliotecas no programa: Algoritmos Algoritmos Leandro Tonietto Unisinos ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto/inf/pg1/algoritmosi_java.pdf Mar-2008 Possuem sintaxe flexível e são mais úteis para descrição

Leia mais

Aula 16. Ficheiros de texto

Aula 16. Ficheiros de texto Aula 16 Aprender Empreender 1 Ficheiros de texto Ficheiros de texto Nos ficheiros de texto a informação é guardada sob a forma de linhas de texto, separadas por um carácter terminador de linha, '\n' (

Leia mais

Apêndice B. Cadeias de Caracteres (Strings)

Apêndice B. Cadeias de Caracteres (Strings) Apêndice B. Cadeias de Caracteres (Strings) Até agora, quando desejávamos indicar o número de elementos existentes em um vetor qualquer, utilizávamos uma variável inteira, digamos tam, para armazenar tal

Leia mais

Curso de C para Engenharias

Curso de C para Engenharias Aula 1 Cristiano Dalbem Dennis Balreira Gabriel Moreira Miller Biazus Raphael Lupchinski Universidade Federal do Rio Grande do Sul Instituto de Informática Grupo PET Computação Primeiro Programa Hello

Leia mais

Algoritmos e Programação. Linguagem C Procedimentos e. Eliane Pozzebon

Algoritmos e Programação. Linguagem C Procedimentos e. Eliane Pozzebon Algoritmos e Programação Linguagem C Procedimentos e Funções Eliane Pozzebon Procedimentos e Funções Procedimentos são estruturas que agrupam um conjunto de comandos, que são executados quando o procedimento

Leia mais

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Revisões de PG. Programação Orientada por Objetos (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Revisões de PG (POO) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Compilar e executar programas em Java Ficheiro fonte (Prog.java) Ficheiro

Leia mais

Linguagens de Programação. Parte IV. Relembrando da Última Aula... Ponteiros. Declaração e Inicialização de Variáveis Ponteiros

Linguagens de Programação. Parte IV. Relembrando da Última Aula... Ponteiros. Declaração e Inicialização de Variáveis Ponteiros Linguagens de Programação Parte IV Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Introdução à Programação em C++ (Continuação) Relembrando da Última Aula... Arrays Mais exemplos de programação

Leia mais

Linguagem C. Prof.ª Márcia Jani Cícero

Linguagem C. Prof.ª Márcia Jani Cícero Linguagem C Prof.ª Márcia Jani Cícero A estrutura Básica de um Programa em C Consiste em uma ou várias funções ou programas. main( ) // primeira função a ser executada // inicia a função // termina a função

Leia mais

Universidade Federal do Espírito Santo. Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza

Universidade Federal do Espírito Santo. Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza Universidade Federal do Espírito Santo Programação I Tipos de Dados Básicos - C Professora: Norminda Luiza Variáveis Tipos de Dados Básicos Formação dos identificadores o nome deve começar com uma letra

Leia mais

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações

Leia mais

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008 Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 29 de agosto de 2008 Introdução O objetivo desta aula prática é exercitar comandos de entrada e saída simples

Leia mais

Linguagem C. Eliane Pozzebon

Linguagem C. Eliane Pozzebon Linguagem C Eliane Pozzebon Material de Apoio de C Site da disciplina: http://www.univasf.edu.br/~eliane.pozzebon Slides de aulas Exercícios Dev-C++: um ambiente de programação interativo e gratuito para

Leia mais

Linguagens de Programação Conceitos e Técnicas. Amarrações

Linguagens de Programação Conceitos e Técnicas. Amarrações Linguagens de Programação Conceitos e Técnicas Amarrações Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um identificador

Leia mais

1ª Lista de Exercícios

1ª Lista de Exercícios Universidade Federal do Rio de Janeiro Data: 26/04/05 Disciplina: Computação I 1ª Lista de Exercícios 1) Faça um programa, em pseudo-código, que peça ao usuário que informe n números reais e então calcule

Leia mais

Introdução à Programação em C (I)

Introdução à Programação em C (I) Introdução à Programação em C (I) IAED Tagus, 2009/2010 Organização de Ficheiros em C Organização Típica de Ficheiros em C Inclusão de bibliotecas de sistema Inclusão de bibliotecas locais Definição de

Leia mais