Carlos Eduardo Batista. Centro de Informática - UFPB

Save this PDF as:
 WORD  PNG  TXT  JPG

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

Download "Carlos Eduardo Batista. Centro de Informática - UFPB"

Transcrição

1 Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB

2 Complexidade dos sistemas de software Estrutura Decomposição Abstração Hierarquia Projeto de sistemas complexos Aula passada... 2

3 Do C ao C++ A Linguagem C++ C++ e POO C++ versus Java Sintaxe básica C++ Principais IDE e ferramentas A Linguagem C++ 3

4 C Linguagem de programação imperativa Matrizes, estruturas, ponteiros, estruturas de controle... Concisa, de baixo nível e permissiva C: Código eficiente (ciente dos recursos) Geração de código de máquina Sem máquina virtual (sandbox) Pré-processador Do C ao C++ 4

5 C Tradicional ou Original Antes da padronização The C Programming Language (Kernighan & Ritchie) C89 ANSI C Ainda a versão mais difundida C99 Desenvolvida em paralelo com C++ C11 Multithreading, melhor suporte a mapas de caracteres unicode etc. Do C ao C++ 5

6 Do C ao C++ 6

7 Do C ao C++ 7

8 #include #include <stdio.h> #include myfile.h Inclusão de arquivos de cabeçalho #define #define PI #define produto(x,y) ((x)*(y)) Constantes simbólicas e abstrações para funções Pré-processador C 8

9 #if #else #endif #ifdef #ifndef Compilação condicional Pré-processador C 9

10 void O tipo do não-valor Usado para designação de parâemtro nulo funcao(void) Usado para definição de ponteiros genéricos void* Tipos inteiros int, long e short, signed e unsigned Tipos reais float e double Tipos fundamentais em C 10

11 C89 não possuía tipo boolean Convenção baseada em inteiros era utilizada Tipos caracteres char um byte Define-se com aspas simples: a, \n, \x45 São na verdade valores inteiros (signed ou unsigned) Tipos fundamentais em C 11

12 Array Memória consecutiva, elementos do mesmo tipo, alocação de tamanho fixo (tamanho conhecido pelo compilador) Compilador traduz a notação de array para notação de ponteiro Indexação baseada em 0 Não há verificação de alocação (extensão do array) Arrayse ponteiros em C 12

13 Limitações do array Não há atribuição direta Array não pode ser passado por valor Array não pode ser retornado por valor Arrayse ponteiros em C 13

14 Ponteiros Um ponteiro é um endereço Em C pode-se manipular-se tanto o ponteiro quanto o elemento apontado Aritmética de ponteiros Para dois tipos diferentes X e Y, X* e Y* são diferentes Ponteiro genérico void* Ponteiro nulo NULL Arrayse ponteiros em C 14

15 Strings em C Uma string é um array de caracteres (tipo char), mutável e delimitada por um caractere especial \0 Tipo: char[] ou char* Um valor literal é denotado através do uso de aspas duplas valor literal Biblioteca C padrão string.h Arrayse ponteiros em C 15

16 #include <stdio.h> #include <stdlib.h> int main(void) { double a[] = {1.0, 2.0, 3.0, 4.0, 5.0}, sum = 0.0; int i; a[1] = 2.2; for (i = 0; i < 5; i++) sum += a[i]; printf("sum = %f\n", sum); /* 15.2 */ return 0; } Arrayse ponteiros em C 16

17 #include <stdio.h> #include <stdlib.h> int main(void) { double *a=(double*)malloc(5*sizeof(double)), sum = 0.0; int i, j, k; if (a == NULL){ printf("erro de alocacao\n"); exit(exit_failure); } for (i = 0; i < 5; i++) *(a+i) = (double)(i + 1); *(a+1) = 2.2; /* a[1] = 2.2 */ for (i = 0; i < 5; i++) sum += *(a+i); printf("sum = %f\n", sum); /* 15.2 */ free(a); return 0; } Arrayse ponteiros em C 17

18 Struct Agregam campos de tipos diferentes em um novo tipo composto Memória consecutiva Seleção direta de componente estrutura1.campo Seleção indireta via ponteiro para estrutura pt_estrutura1->campo União Todos os campos ocupam a mesma memória Maneira de se especializar uma estrutura em diferentes direções Estruturas e uniões em C 18

19 typedef struct{ char road[15]; int roadnumber; char town[20]; } address; typedef struct{ int idnumber; char firstname[10], lastname[20]; address location;} person; void print_person(const person p){ printf("%s %s\n%s %-4d\n%s\n\n", p.firstname, p.lastname, p.location.road, p.location.roadnumber, p.location.town); } Estruturas e uniões em C 19

20 Estruturas em C são o ponto de partida para os mecanismos de abstração em C++ Definição de tipos x definição de classes Ponteiros para funções Duas operações com funções possíveis Chamada da função Captura do endereço para a função (ponteiro) Estruturas e uniões em C 20

21 #include <stdio.h> void (*f)(char *, int); void fun1(char *s, int i){ printf("fun1: %s, %d\n", s, i); } void fun2(char *s, int i){ printf("fun2: %s, %d\n", s, i); } int main(void) { int cond; } printf("condicao (0, 1): "); scanf(" %d", &cond); if (cond) f = &fun1; else f = &fun2; (*f)("ap", 8); return 0; Estruturas e uniões em C 21

22 enum Mapeamento de valores em instruções switch structs typedef Tipos definidos em C 22

23 Operadores C++ (re)define 3 operadores. -> :: (escopo) Estruturas de controle C = C++ If, if-else, switch, while... C++ - no laço for pode-se declarar variáveis locais na inilização C89 (ANSI C) não Do C ao C++ 23

24 #include <iostream> using namespace std; int main(){ int i = 55, j = 77; cout << i << " " << j << endl << endl; for(int j = 10, i = 0; i < 5; i++, j++){ cout << i << " " << j << endl; } cout << endl; } cout << i << " " << j << endl << endl; Do C ao C++ 24

25 Funções Não é permitido o aninhamento de funções em ANSI C Parâmetros são passados por valor Ponteiros são passados como valor Mecanismo para definição de número arbitrário de parâmetros printf(const char*...) C++ Sobrecarga de funções Argumentos padrão Do C ao C++ 25

26 #include <stdio.h> double swap_doubles_ptr(double *d1, double *d2){ double temp; temp = *d1; *d1 = *d2; *d2 = temp; } int main(void) { double e, f; } e = 5.0, f = 7.0; printf("%f %f\n", e, f); // swap_doubles_ptr(&e, &f); printf("%f %f\n", e, f); // return 0; Do C ao C++ 26

27 Organização de programas em C Cabeçalhos (.h) e arquivos de código (.c) Inclusão textual via #include Organização lógica de C++ segue a de C, com escopo diferenciado através do suporte a namespaces Do C ao C++ 27

28 Funções de alocação de memória em C malloc calloc realloc free C++ new delete Do C ao C++ 28

29 C++ inclui C With minor exceptions, C++ is a superset of C (meaning C89).Well-written C programs tend to be C++ programs as well. (The C++ Programming Language) Compatibilidade C/C++ 29

30 Comentários // Não suportados em ANSI C (C89) C++ e C99 suportam Funções sem argumentos Em C pode, em C++ não Estruturas inline como retorno ou parâmetro Em C pode, em C++ não Enum Em C o valor pode ser associado a um inteiro, em C++ não Compatibilidade C/C++ 30

31 Ponteiro para void Em C podem ser associados a ponteiros de qualquer tipo, em C++ não Static e Casts Semântica diferente em C++ Compatibilidade C/C++ 31

32 Notas de aula Prof. Kurt Nørmark (Aalborg University) TIOBE Referências 32

33 Motivação para o uso de C++ para o aprendizado de POO Quando usar C e quando usar C++ C++ versus Java Sintaxe básica de C++ Ambientes de desenvolvimento C++ Próxima aula 33

34 Linguagem de Programação I Carlos Eduardo Batista Centro de Informática - UFPB

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO

INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO INTRODUÇÃO AO C++ SISTEMAS DE INFORMAÇÃO DR. EDNALDO B. PIZZOLATO Tópicos Estrutura Básica B de Programas C e C++ Tipos de Dados Variáveis Strings Entrada e Saída de Dados no C e C++ INTRODUÇÃO O C++ aceita

Leia mais

Resumo da Introdução de Prática de Programação com C. A Linguagem C

Resumo da Introdução de Prática de Programação com C. A Linguagem C Resumo da Introdução de Prática de Programação com C A Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Algoritmos e Programação Parte 05 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org

Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Estrutura da linguagem de programação C Prof. Tiago Eugenio de Melo tiago@comunidadesol.org Breve Histórico A linguagem de programação C foi criada na década de 70, por Dennis Ritchie, que a implementou,

Leia mais

Programação Estruturada I

Programação Estruturada I Programação Estruturada I Introdução a Linguagem C Prof. Thiago Caproni Tavares 1 Prof. Mateus dos Santos 2 1 thiago.tavares@ifsuldeminas.edu.br 2 mateus.santos@ifsuldeminas.edu.br Última Atualização:

Leia mais

Introdução a POO. Introdução a Linguagem C++ e POO

Introdução a POO. Introdução a Linguagem C++ e POO Introdução a POO Marcio Santi Linguagem C++ Introdução a Linguagem C++ e POO Programação Orientada a Objetos (POO) e C++ Recursos C++ não relacionados às classes Incompatibilidades entre C e C++ Classes

Leia mais

Alocação dinâmica de memória

Alocação dinâmica de memória Alocação dinâmica de memória Jander Moreira 1 Primeiras palavras Na solução de problemas por meio algoritmos ou programas, é comum surgir a necessidade de manter todo o conjunto de dados a ser processado

Leia mais

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.

Linguagem C. Programação Estruturada. Fundamentos da Linguagem. Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu. Programação Estruturada Linguagem C Fundamentos da Linguagem Prof. Luis Nícolas de Amorim Trigo nicolas.trigo@ifsertao-pe.edu.br Sumário Estrutura Básica Bibliotecas Básicas Tipos de Dados Básicos Variáveis/Declaração

Leia mais

INF 1005 Programação I

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

Leia mais

Princípios de programação em Linguagem C Cesar Tadeu Pozzer UFSM 16/08/2010

Princípios de programação em Linguagem C Cesar Tadeu Pozzer UFSM 16/08/2010 Princípios de programação em Linguagem C Cesar Tadeu Pozzer UFSM 16/08/2010 Introdução a Programação em Linguagem C Antes de um algoritmo ser executado no computador, ele deve ser traduzido em uma linguagem

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

Estruturas (Registros)

Estruturas (Registros) Estruturas (Registros) Agrupa conjunto de tipos de dados distintos sob um único nome string string inteiro inteiro inteiro float float Cadastro Pessoal Nome Endereço Telefone Idade Data de Nascimento Peso

Leia mais

Algoritmos e Programação Estruturada

Algoritmos e Programação Estruturada Algoritmos e Programação Estruturada Virgínia M. Cardoso Linguagem C Criada por Dennis M. Ritchie e Ken Thompson no Laboratório Bell em 1972. A Linguagem C foi baseada na Linguagem B criada por Thompson.

Leia mais

Capítulo 2: Introdução à Linguagem C

Capítulo 2: Introdução à Linguagem C Capítulo 2: Introdução à Linguagem C INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso

Leia mais

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre Cap. 02 Fundamentos de Linguagens Sumário : Linguagem, alfabeto e gramática

Leia mais

Programação e Sistemas de Informação

Programação e Sistemas de Informação Gestão e Programação de Sistemas Informáticos Programação e Sistemas de Informação Programação e Sistemas de Informação REVISÕES 1 Conteúdos Introdução Declaração de strings Atribuição de valores a strings

Leia mais

Tipos de Dados Simples

Tipos de Dados Simples Programação 11543: Engenharia Informática 6638: Tecnologias e Sistemas de Informação Cap. 3 Tipos de Dados Simples Tipos de Dados Simples Objectivos: Hierarquia de tipos de dados Tipos de dados simples

Leia mais

Curso de Linguagem C

Curso de Linguagem C Curso de Linguagem C 1 Aula 1 - INTRODUÇÃO...4 AULA 2 - Primeiros Passos...5 O C é "Case Sensitive"...5 Dois Primeiros Programas...6 Introdução às Funções...7 Introdução Básica às Entradas e Saídas...

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 07 Nomes, Vinculações, Escopos e Tipos de Dados Edirlei Soares de Lima Introdução Linguagens de programação imperativas são abstrações

Leia mais

Algoritmo e Técnica de Programação - Linguagem C

Algoritmo e Técnica de Programação - Linguagem C Algoritmo e Técnica de Programação Linguagem C Gilbran Silva de Andrade 5 de junho de 2008 Introdução A liguagem C foi inventada e implementada por Dennis Ritchie em um DEC PDP-11 que utilizava o sistema

Leia mais

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática

Universidade da Beira Interior Cursos: Matemática /Informática e Ensino da Informática Folha 1-1 Introdução à Linguagem de Programação JAVA 1 Usando o editor do ambiente de desenvolvimento JBUILDER pretende-se construir e executar o programa abaixo. class Primeiro { public static void main(string[]

Leia mais

Programando em C++ Histórico da Linguagem C

Programando em C++ Histórico da Linguagem C Programando em C++ Joaquim Quinteiro Uchôa joukim@comp.ufla.br DCC-UFLA, 2002 Programando em C++ p.1/38 Histórico da Linguagem C Linguagem C: 1972 - Laboratório Bells, por Dennis Ritchie, a partir da linguagem

Leia mais

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream>

Aula 1. // exemplo1.cpp /* Incluímos a biblioteca C++ padrão de entrada e saída */ #include <iostream> Aula 1 C é uma linguagem de programação estruturada desenvolvida por Dennis Ritchie nos laboratórios Bell entre 1969 e 1972; Algumas características: É case-sensitive, ou seja, o compilador difere letras

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação. A Linguagem C

Universidade Federal de Uberlândia Faculdade de Computação. A Linguagem C Universidade Federal de Uberlândia Faculdade de Computação A Linguagem C Prof. Renato Pimentel 1 Programação Quando queremos criar ou desenvolver um software para realizar determinado tipo de processamento

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Prof. Yandre Maldonado - 1 Prof. Yandre Maldonado e Gomes da Costa Prof. Yandre Maldonado - 2 Linguagem C: Desenvolvida por Dennis Ritchie nos laboratórios da AT&T Bell (EUA) no início dos anos 70; Algol

Leia mais

Registros. Técnicas de Programação. Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes

Registros. Técnicas de Programação. Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes Rafael Silva Guimarães :p://:p.ci.ifes.edu.br/informa@ca/rafael_guimaraes Registros Técnicas de Programação Baseado no material do Prof. Rafael Vargas Mesquita Conceito de Registro (Struct) Vetores e Matrizes

Leia mais

Fundamentos de Programação

Fundamentos de Programação Fundamentos de Programação CP41F Conversão de tipos. Alocação dinâmica de memória. Recursão. Aula 16 Prof. Daniel Cavalcanti Jeronymo Universidade Tecnológica Federal do Paraná (UTFPR) Engenharia de Computação

Leia mais

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto

Linguagem C. TGSI Lógica de Programação / Linguagem C Prof. Marcos Roberto Linguagem C O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional UNIX. O C é derivado de uma outra linguagem: o B,

Leia mais

Programação em C++: Introdução

Programação em C++: Introdução Programação em C++: Introdução J. Barbosa J. Tavares Visualização Científica Conceitos básicos de programação Algoritmo Conjunto finito de regras sobre as quais se pode dar execução a um dado processo

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

1ª versão. #include <stdio.h> #include <string.h> #include <stdlib.h> #define maxdiscos 1000

1ª versão. #include <stdio.h> #include <string.h> #include <stdlib.h> #define maxdiscos 1000 #include #include #include #define maxdiscos 1000 typedef struct { char nomeautor[80]; char nomedisco[100]; int numdiscosvendidos; DISCO; 1ª versão int main() { DISCO listadiscos[maxdiscos];

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

MC102 Algoritmos e programação de computadores Aula 3: Variáveis

MC102 Algoritmos e programação de computadores Aula 3: Variáveis MC102 Algoritmos e programação de computadores Aula 3: Variáveis Variáveis Variáveis são locais onde armazenamos valores na memória. Toda variável é caracterizada por um nome, que a identifica em um programa,

Leia mais

INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++

INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: Bacharelado em Ciências e Tecnologia INFORMÁTICA APLICADA AULA 02 LINGUAGEM DE PROGRAMAÇÃO C++ Profª ª Danielle Casillo COMPILADORES Toda linguagem de programação

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: Introdução à Programação Carga horária total: 60 Carga horária teórica: 0 Carga horária prática: 60 Código da Disciplina: CCMP0041 Período de oferta: 2010.2 Turma: CA

Leia mais

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica

Introdução a Programação. Ponteiros e Strings, Alocação Dinâmica Introdução a Programação Ponteiros e Strings, Alocação Dinâmica Tópicos da Aula Hoje aprenderemos a relação entre ponteiros e strings Ponteiros para strings X Vetores de Caracteres Vetores de ponteiros

Leia mais

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes

ITENS FUNDAMENTAIS. Profª Angélica da Silva Nunes ITENS FUNDAMENTAIS Profª Angélica da Silva Nunes CONCEITOS BÁSICOS Hardware - é a parte física do computador, tais como: teclado, monitor de vídeo, etc. Software - são os programas e aplicativos que permitem

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 02 Introdução a Linguagem C Edirlei Soares de Lima Lógica de Programação Lógica de Programação é a técnica de criar sequências lógicas de ações para

Leia mais

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO INTRODUÇÃO À LINGUAGEM PASCAL CESAR BEZERRA TEIXEIRA,MSC PREFÁCIO A linguagem C foi desenvolvida no início da década de 70 por dois pesquisadores do Bell Laboratories, Brian Kernihgan e Dennis Ritchie,

Leia mais

Module Introduction. Programação. Cap. 10 Estruturas (Structs)

Module Introduction. Programação. Cap. 10 Estruturas (Structs) 5374 : Engenharia Informática 6638 : Tecnologias e Sistemas de Informação 9099 : Bioengenharia 10135 : Ciências Biomédicas Cap. 10 Estruturas () Module Introduction Sumário: Taxonomia de tipos de dados

Leia mais

Estrutura de Dados. Prof. Gustavo Willam Pereira. Créditos: Profa. Juliana Pinheiro Campos

Estrutura de Dados. Prof. Gustavo Willam Pereira. Créditos: Profa. Juliana Pinheiro Campos Estrutura de Dados Prof. Gustavo Willam Pereira Créditos: Profa. Juliana Pinheiro Campos ESTRUTURAS DE DADOS Ementa Introdução à Linguagem C. Recursividade. Alocação dinâmica de memória. Conceito de tipos

Leia mais

Iguatemi Eduardo da Fonseca Eduardo de Santana Medeiros Alexandre. Linguagem de Programação I: Programação Estruturada usando C

Iguatemi Eduardo da Fonseca Eduardo de Santana Medeiros Alexandre. Linguagem de Programação I: Programação Estruturada usando C Iguatemi Eduardo da Fonseca Eduardo de Santana Medeiros Alexandre Linguagem de Programação I: Programação Estruturada usando C Editora da UFPB João Pessoa 2014 UNIVERSIDADE FEDERAL DA PARAÍBA Reitora Vice-Reitor

Leia mais

Conceito de classe em C++

Conceito de classe em C++ Introdução à Programação com Classes em C++ Ana Paula Rocha, Luís Paulo Reis, João Pascoal Faria FEUP - MIEEC Programação 2-2008/2009 Conceito de classe em C++ Classe em sentido lato: tipo de dados definido

Leia mais

Estruturas de entrada e saída

Estruturas de entrada e saída capa Estruturas de entrada e saída - A linguagem C utiliza de algumas funções para tratamento de entrada e saída de dados. - A maioria dessas funções estão presentes na biblioteca . - As funções

Leia mais

Primeiro Curso de Programação em C 3 a Edição

Primeiro Curso de Programação em C 3 a Edição Edson Luiz França Senne Primeiro Curso de Programação em C 3 a Edição Visual Books Sumário Prefácio da Terceira Edição 9 Prefácio da Primeira Edição 11 Aula 1 13 Regras de sintaxe de uma linguagem de programação...

Leia mais

Aplicação dos conceitos de programação orientada a objeto em linguagens de alto nível

Aplicação dos conceitos de programação orientada a objeto em linguagens de alto nível 95 Aplicação dos conceitos de programação orientada a objeto em linguagens de alto nível 96 Aplicação dos conceitos de programação orientada a objeto em linguagens de alto nível Nesta etapa estudaremos

Leia mais

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação

Linguagem C: variáveis, operadores, entrada/saída. Prof. Críston Algoritmos e Programação Linguagem C: variáveis, operadores, entrada/saída Prof. Críston Algoritmos e Programação Linguagem C Linguagem de uso geral (qualquer tipo de aplicação) Uma das linguagens mais utilizadas Foi utilizada

Leia mais

APOSTILA DE PROGRAMAÇÃO I PARA ENGENHARIA DE PRODUÇÃO

APOSTILA DE PROGRAMAÇÃO I PARA ENGENHARIA DE PRODUÇÃO APOSTILA DE PROGRAMAÇÃO I PARA ENGENHARIA DE PRODUÇÃO Prof. ANDRÉ CARLOS SILVA FASAR Versão 1.1 SUMÁRIO 1 INTRODUÇÃO AO C++...11 1.1. Aspectos gerais da linguagem C++...11 1.1.1. Comentários...12 1.1.2.

Leia mais

INF 1620 P1-10/04/02 Questão 1 Nome:

INF 1620 P1-10/04/02 Questão 1 Nome: INF 1620 P1-10/04/02 Questão 1 Considere uma disciplina que adota o seguinte critério de aprovação: os alunos fazem duas provas (P1 e P2) iniciais; se a média nessas duas provas for maior ou igual a 5.0,

Leia mais

cast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i).

cast poderia ser usado também para transformar um real (float) em inteiro. A sintaxe C (float)i pode ser substituída em C++ por float(i). Cast (conversão) Um tipo de dado pode ser convertido momentaneamente em outro tipo com um cast. Em linguagem C a sintaxe usada é formada pelo tipo desejado entre parênteses precedendo a expressão a ser

Leia mais

Italo Valcy <italo@dcc.ufba.br>

Italo Valcy <italo@dcc.ufba.br> Programação C Módulo 01 Introdução à linguagem C Italo Valcy www.ieee.org/ufba Italo Valcy Programação em C Licença de uso e distribuição Todo o material aqui disponível pode, posteriormente,

Leia mais

Programas simples em C

Programas simples em C Programas simples em C Problema 1. Escreve um programa em C que dados dois inteiros indique se são iguais ou qual o maior. Utilizar a construção em 5 etapas... quais? 1. Perceber o problema 2. Ideia da

Leia mais

UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06. Funções, variáveis, parâmetros formais

UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06. Funções, variáveis, parâmetros formais UNIVERSIDADE DO VALE DO RIO DOS SINOS - UNISINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS - CENTRO 06 Disciplina: Linguagem de Programação C Profª Viviane Todt Diverio Funções, variáveis, parâmetros formais

Leia mais

Iniciação rápida à Linguagem C

Iniciação rápida à Linguagem C Iniciação rápida à Linguagem C jrg, SO, ISCTE 2009-10-1ºS vs 001 1. O "Hello World" O "Hello World" é o seguinte programa ( 1 ) printf ("Hello World!\n"); A primeira linha do programa é um "include". Esta

Leia mais

Programação Orientada por Objectos - C++ jvo

Programação Orientada por Objectos - C++ jvo Aula 16 C++ Breve perspectiva histórica Diferenças entre o C++ e o C Generalidade sobre a programação em C++ Primeiros programas: entradas e saídas Breve perspectiva histórica O C++ é uma extensão do C

Leia mais

INF 1007 Programação II

INF 1007 Programação II INF 1007 Programação II Aula 06 Tipos Estruturados Edirlei Soares de Lima Dados Compostos Até agora somente utilizamos tipos de dados simples: char, int, float, double. Muitas vezes

Leia mais

Programação em Linguagem C 1 CONCEITOS PRELIMINARES

Programação em Linguagem C 1 CONCEITOS PRELIMINARES Linguagem C Índice 1 Conceitos preliminares...1 1.1 Microcomputadores padrão Intel x86...1 1.2 Modos de memória nos microcomputadores...3 1.3 O sistema operacional...3 2 Introdução a Linguagem C...4 2.1

Leia mais

Introdução à Programação em Linguagem C

Introdução à Programação em Linguagem C Material Complementar EA869 (Prof. Von Zuben DCA/FEEC/Unicamp) 1 1. Enfoque Introdução à Programação em Linguagem C Será tratada aqui a linguagem C tradicional, sendo que existem outras variantes tais

Leia mais

Tipo de Dados em Linguagem C

Tipo de Dados em Linguagem C Tipo de Dados em Linguagem C Principais tipos de dados em C int : tipo de dados inteiros (exemplo: 1, -3, 100, -9, 18, etc.) float : tipo de dados reais (exemplo: 1.33, 3.14, 2.00, -9.0, 1.8, etc.) Ocupa

Leia mais

Linguagem C. Ricardo Terra. rterrabh@gmail.com. Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341

Linguagem C. Ricardo Terra. rterrabh@gmail.com. Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341 Linguagem C Ricardo Terra rterrabh@gmail.com Ricardo Terra (rterrabh@gmail.com) Linguagem C 1 de agosto de 2012 1 / 341 Conteúdo 1 Introdução Tópicos Importantes 2 Sintaxe Básica 3 Ponteiros 4 Tópicos

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

Curso Prático de C++

Curso Prático de C++ Sumário Autor: Prof. Luiz Bianchi Universidade Regional de Blumenau FUNDAMENTOS... 3 Declaração de variáveis... 4 Tipos de dados... 4 Operador de atribuição... 5 Comentários... 5 Tipos modificados... 6

Leia mais

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10

2. OPERADORES... 6 3. ALGORITMOS, FLUXOGRAMAS E PROGRAMAS... 8 4. FUNÇÕES... 10 1. TIPOS DE DADOS... 3 1.1 DEFINIÇÃO DE DADOS... 3 1.2 - DEFINIÇÃO DE VARIÁVEIS... 3 1.3 - VARIÁVEIS EM C... 3 1.3.1. NOME DAS VARIÁVEIS... 3 1.3.2 - TIPOS BÁSICOS... 3 1.3.3 DECLARAÇÃO DE VARIÁVEIS...

Leia mais

O COMPUTADOR. Introdução à Computação

O COMPUTADOR. Introdução à Computação O COMPUTADOR Introdução à Computação Sumário O Hardware O Software Linguagens de Programação Histórico da Linguagem C Componentes Básicos do Computador O HARDWARE: O equipamento propriamente dito. Inclui:

Leia mais

Manipulação de Arquivos

Manipulação de Arquivos Manipulação de Arquivos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Tipo

Leia mais

Exercício 1. Tabela 1: Cadastro de usuários, senhas e privilégios (exemplo). Login Senha Privilégio Armamento

Exercício 1. Tabela 1: Cadastro de usuários, senhas e privilégios (exemplo). Login Senha Privilégio Armamento 1/5 Exercício 1 Um sistema de segurança militar, usado num submarino nuclear, controla o acesso de usuários a três subsistemas (armamento, navegação e comunicações) através da digitação do login do usuário

Leia mais

LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados

LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS. Estrutura de Dados LISTAS ENCADEADAS OU NÃO- SEQÜENCIAIS Listas Lineares Como visto anteriormente, as operações básicas para o nosso TAD Lista Linear são: FLVazia Vazia Retira Insere Imprime A implementação através de arrays

Leia mais

Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha

Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha Esta apresentação ensinará os conceitos de Orientação a Objetos com C++, do mais básico para o mais avançado. É suposto que o aluno já tenha conhecimento avançado de C. Exemplo em C: Faça um programa que

Leia mais

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa

CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs

Leia mais

Conceitos Básicos de C

Conceitos Básicos de C Conceitos Básicos de C Bibliografia Problem Solving & Program design in C, Jeri R. Hanly e Elliot B. Kpffman, 3 a edição Data Structures and Algorithm Analysis in C, Mark Allen Weiss, 2 a edição, Addison-Wesley,

Leia mais

INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1

INF1007: Programação 2 9 Tipos Abstratos de Dados. (c) Dept. Informática - PUC-Rio 1 INF1007: Programação 2 9 Tipos Abstratos de Dados (c) Dept. Informática - PUC-Rio 1 Tópicos Módulos e compilação em separado Tipo abstrato de dados Exemplo 1: TAD Ponto Exemplo 2: TAD Círculo Exemplo 3:

Leia mais

Linguagem de Programação em C

Linguagem de Programação em C Linguagem de Programação em C Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://alsm.cc O que fazer com essa apresentação 2 Introdução Por que programar? Quando o homem necessita do auxilio

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

14. Arquivos. W. Celes e J. L. Rangel. Estruturas de Dados PUC-Rio 13-1

14. Arquivos. W. Celes e J. L. Rangel. Estruturas de Dados PUC-Rio 13-1 14. Arquivos W. Celes e J. L. Rangel Neste capítulo, apresentaremos alguns conceitos básicos sobre arquivos, e alguns detalhes da forma de tratamento de arquivos em disco na linguagem C. A finalidade desta

Leia mais

DAS5305 Informática Industrial I

DAS5305 Informática Industrial I DAS5305 Informática Industrial I Aprendizado de Programação C e C++ Prof. Marcelo R. Stemmer Eng. Alexandre Orth Eng. Fernando Deschamps Eng. Alberto Xavier Pavim S2i Sistemas Industriais Inteligentes

Leia mais

PROGRAMA DE DISCIPLINA

PROGRAMA DE DISCIPLINA PROGRAMA DE DISCIPLINA Disciplina: INTRODUÇÃO À PROGRAMAÇÃO Carga horária total: 60 h Carga horária teórica: 30 h Carga horária prática: 30 h Código da Disciplina: CCMP0041 Período de oferta: 2015.2 Turma:

Leia mais

Curso de C: uma breve introdução

Curso de C: uma breve introdução V Semana de Engenharia Elétrica - UFBA Licença de uso e distribuição Todo o material aqui disponível pode, posteriormente, ser utilizado sobre os termos da: Creative Commons License:

Leia mais

Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza

Introdução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo

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

PADI 2015/16. Aula 1 Introdução à Plataforma.NET

PADI 2015/16. Aula 1 Introdução à Plataforma.NET PADI 2015/16 Aula 1 Introdução à Plataforma.NET 1 Sumário 1. Framework.NET Arquitectura 2. Linguagem C# 2.0 Sintaxe C# vs. Java vs. C++ 3. IDE: MS Visual Studio 2005 ou superior Ferramentas Console/Win

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem

Leia mais

Variáveis e Comandos de Atribuição

Variáveis e Comandos de Atribuição BCC 201 - Introdução à Programação Variáveis e Comandos de Atribuição Guillermo Cámara-Chávez UFOP 1/47 Estrutura Básica de um programa C I < d i r e t i v a s do pré p r o c e s s a d o r > < d e c l

Leia mais

Fundamentos de Programação II. Introdução à linguagem de programação C++

Fundamentos de Programação II. Introdução à linguagem de programação C++ Fundamentos de Programação II Introdução à linguagem de programação C++ Prof. Rafael Henrique D. Zottesso Material cedido por Prof. Msc. Everton Fernando Baro Agenda IDE HelloWorld Variáveis Operadores

Leia mais

número 32.767: 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Por exemplo, tendo o seguinte binário com sinal (em vermelho indica positivo): 0 0 0 0 0 0 1 1 = 3

número 32.767: 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Por exemplo, tendo o seguinte binário com sinal (em vermelho indica positivo): 0 0 0 0 0 0 1 1 = 3 Os cinco tipos básicos de dados e seus modificadores Em C temos os tipos de dados básicos char (caractere), int (inteiro), float (ponto flutuante), double (ponto flutuante de dupla precisão) e void (sem

Leia mais

Curso básico de Linguagem C. Desenvolvido por Ricardo Lüders

Curso básico de Linguagem C. Desenvolvido por Ricardo Lüders Curso básico de Linguagem C Desenvolvido por Ricardo Lüders Introdução Introdução > Sobre o curso Sobre o curso O curso será apresentado em 5 (cinco) encontros, totalizando 20 (vinte) horas/aula. Apresentará

Leia mais

Introdução a C Tipos de Dados Variáveis Operadores

Introdução a C Tipos de Dados Variáveis Operadores Introdução a C Tipos de Dados Variáveis Operadores INF1005 Programação I Prof. Hélio Lopes lopes@inf.puc-rio.br sala 408 RDC 1 introdução a C tópicos ciclo de desenvolvimento sistemas numéricos tipos de

Leia mais

Do C ao C++: O C++ é um C melhor, bem vindo ao C++.

Do C ao C++: O C++ é um C melhor, bem vindo ao C++. NOTA: Estes apontamentos deverão servir de apoio à aprendizagem do C++, mas não dispensam a leitura dos apontamentos das aulas teóricas da disciplina de Programação Orientada por Objectos e de outros livros

Leia mais

C para microcontroladores

C para microcontroladores Copyright 2007 Hans Jörg Schneebeli C para microcontroladores Hans Jörg Schneebeli Objetivo O objetivo é mostrar como se pode programar dispositivos, como microcontroladores, com restrições severas de

Leia mais

Linguagens de Programação

Linguagens de Programação 68 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas instruem o computador a realizar

Leia mais

Sistemas Microcontrolados

Sistemas Microcontrolados Sistemas Microcontrolados Aula 4: Programação em C para PIC Marco Jose da Silva mdasilva@utfpr.edu.br Compiladores C para PICs C18 HI-TECH CCS IAR MikroC http://www.microchip.com/ http://www.htsoft.com/

Leia mais

APOSTILA DO CURSO LINGUAGEM C. Prof. Erico Fagundes Anicet Lisboa, M. Sc. erico@ericolisboa.eng.br

APOSTILA DO CURSO LINGUAGEM C. Prof. Erico Fagundes Anicet Lisboa, M. Sc. erico@ericolisboa.eng.br APOSTILA DO CURSO LINGUAGEM C Prof. Erico Fagundes Anicet Lisboa, M. Sc. erico@ericolisboa.eng.br Versão digital disponível na internet http://www.ericolisboa.eng.br RIO DE JANEIRO, RJ - BRASIL NOVEMBRO

Leia mais

MC-102 Aula 19 Registros

MC-102 Aula 19 Registros MC-102 Aula 19 Registros Instituto de Computação Unicamp 4 de Maio de 2015 Roteiro 1 Registros 2 Redefinição de tipos (Instituto de Computação Unicamp) MC-102 Aula 19 4 de Maio de 2015 2 / 17 Registros

Leia mais

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s

Operaçõe õ s c om o Strings Intr oduç ão a o Ponte iros o e Funçõe õ s Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Operações com Strings Introdução a Ponteiros e Funções Profa Rosana Braga 1 Strings Strings são seqüências de caracteres

Leia mais

1. Introdução. 2. Compiladores 3. A Linguagem C do CCS Bibliografia. Teresina - 2011. 1.1. C vs Assembly

1. Introdução. 2. Compiladores 3. A Linguagem C do CCS Bibliografia. Teresina - 2011. 1.1. C vs Assembly Universidade Federal do Piauí Centro de Tecnologia Departamento de Engenharia Elétrica Linguagem C Prof. Marcos Zurita zurita@ufpi.edu.br www.ufpi.br/zurita Teresina - 2011 1. Introdução 1.1. C vs Assembly

Leia mais

2. Constantes e Variáveis

2. Constantes e Variáveis 2. Constantes e Variáveis Neste capitulo veremos como os dados constantes e variáveis são manipulados pela linguagem C. O que são constantes inteiras, reais, caracteres e strings. Quais são as regras de

Leia mais

Curso de C. Procedimentos e Funções. 6/4/200901/04/09 09:42 Copyright@Arnaldo V Moura, Daniel F Ferber 1

Curso de C. Procedimentos e Funções. 6/4/200901/04/09 09:42 Copyright@Arnaldo V Moura, Daniel F Ferber 1 Curso de C Procedimentos e Funções 6/4/200901/04/09 09:42 Copyright@Arnaldo V Moura, Daniel F Ferber 1 Funções Roteiro: Funções Declaração e chamada Funções importantes Exemplos de funções Variáveis Globais,

Leia mais

Aula 1 Tipo Abstrato de Dados

Aula 1 Tipo Abstrato de Dados Aula 1 Tipo Abstrato de Dados Luiz Chaimowicz e Raquel O. Prates Livro Projeto de Algoritmos Capítulo 1 2009-1 O que é um algoritmo? O que é um programa? Algoritmos Sequência de ações executáveis para

Leia mais