3. Linguagem de Programação C

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

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

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

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

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

Linguagens de Programação I

A linguagem C (visão histórica)

Curso de C. Declaração de Variáveis 18/3/ :48 1

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

A Linguagem C. A forma de um programa em C

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Guia de bolso - Prof. César Melo

4. Estruturas Fundamentais de Programação em C

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

4 Variáveis. Unesp Campus de Guaratinguetá

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

Introdução à Linguagem C

Linguagem C: Variáveis e Operadores. Prof. Leonardo Barreto Campos 1

Introdução a Programação de Jogos

Linguagem de Programação. Thiago Leite Francisco Barretto

Linguagem de Programação C

Introdução à Computação MAC0110

Linguagem C: Introdução

Introdução à Linguagem C Variáveis e Expressões

Características da Linguagem C

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

Fundamentos de Programação. Linguagem C++ Introdução, identificadores, tipos de dados. Prof. Bruno E. G. Gomes IFRN

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

Métodos Computacionais

Introdução a Linguagem C. Prof. Me. Hélio Esperidião

Cláudio C. Rodrigues Faculdade da Computação - UFU. Faculdade da Computação - UFU 1

Linguagem C para Microcontroladores

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

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

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

K&R: Capitulo 2 IAED, 2012/2013

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Introdução à Linguagem C

Cap. 2 Expressões na linguagem C

Programação: Vetores

Algoritmos e Programação

Disciplina de Algoritmos e Programação

Slides trabalhados durante a quinta aula

Introdução à Ciência da Computação

Revisão C++ - Parte 1

Conceitos básicos de programação

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

Algoritmos: Conceitos Fundamentais. Slides de autoria de Rosely Sanches e Simone Senger de Souza

Ambiente de desenvolvimento

Utilizando cin: primeiros passos

11 - Estrutura de um programa em C

Introdução à Ciência da Computação scc-120

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

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

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

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Faculdade de Computação

Prof. Marcelo Machado Cunha Faculdade Pio Décimo

Características fundamentais de codificação de programas

Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java

Instituto Superior de Engenharia de Lisboa

ITENS FUNDAMENTAIS Programando em C++

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

Estrutura de Programas e Tipos de Dados Simples

INTRODUÇÃO A LINGUAGEM C

Programação Aplicada à Engenharia

a) Calcule o valor médio de CPI apresentado na execução deste programa P, utilizando-se C1 sem e com otimização.

Linguagem de Programação C. Prof. Fabrício Olivetti de França

Programação Básica. Estrutura de um algoritmo

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Aula 3 Conceitos de memória, variáveis e constantes Cleverton Hentz

Legibilidade do código fonte

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

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

Estrutura do programa

Disciplina de Algoritmos e Programação

AULA TEÓRICA 3 Tema 2. Introdução a programação em Java (JVM, JDK)

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Segunda Aula Prática - 3 de setembro de 2010

Olimpíadas de Informática

Conceitos Básicos Linguagem C

3. Linguagem de Programação C

Programação Estruturada Aula 2 - Introdução

Introdução a Programação na Linguagem C.

1/50. Conceitos Básicos. Programa Básico

Estruturas de Dados. Introdução Definição de Ponteiros Declaração de Ponteiros em C Manipulação de Ponteiros em C

Representação de Dados

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

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

Curso de C para Engenharias

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

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

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

Lição 4 Fundamentos da programação

Elementos da Linguagem C. K&R: Capitulo 2

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

Transcrição:

Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1

Principais Tópicos 3.2. Estrutura de Programas e Representação de Dados 3.2.1. Estrutura de programas em C 3.2.2. Representação de Dados 3.2.2.1. Constantes 3.2.2.2. Variáveis 3.2.2.3. Tipos de Dados 2

3.2.1. Estrutura de Programas em C Exemplo de um programa em C Seja um programa em C que gera uma tabela comparando os valores de N 2 e 2 N N N 2 2 N 0 0 1 1 1 2 2 4 4 3 9 8 4 16 16 5 25 32 3

3.2.1. Estrutura de Programas em C /* arquivo: potencia.c este programa gera uma tabela comparando valores das funcoes n^2 e 2^n */ #include <stdio.h> #include <genlib.h> /* Constantes * LimInf - Limite inferior * LimSup - Limite superior */ #define LimInf 0 #define LimSup 12 Comentários do programa Inclusão de bibliotecas Seção de comentários Definições de constantes 4

3.2.1. Estrutura de Programas em C /* programa potencia * Uso: potencia (n, k) retorna n elevado a k */ int potencia (int n, int k){ int i, resultado; Comentários de função } resultado = 1; for (i = 0; i < k; i++){ resultado*= n; } return (resultado); Função // Programa principal main (){ int j; } printf ( 2 N \n ); printf ( N N 2 \n ); printf ( ----+-----+------- \n ); for (j = LimInf; j <= LimSup; j++){ printf ( %2d %3d %4d \n, j, potencia (j, 2), potencia (2, j)); } Definição de variáveis locais Programa Principal 5

3.2.1. Estrutura de Programas em C Comentários Ignorados pelo compilador, Fornecem informações importantes» Para o programador» Para outros programadores Formatos: // Comentário de uma linha /* Comentário de várias linhas*/ 6

3.2.1. Estrutura de Programas em C Bibliotecas Conjunto de ferramentas escritas anteriormente que executam operações úteis» Ao serem incluídas, suas ferramentas são disponibilizadas #include <stdio.h>» Biblioteca do sistema, fornecida com o ANSI C» Contém funções de entrada e saída #include <genlib.h>» Biblioteca privada 7

3.2.1. Estrutura de Programas em C Funções Programas grandes são difíceis de entender» Maioria dos programas são divididos em programas menores (funções) Grande parte de processamento em um programa C é geralmente realizado por meio de funções Função é uma unidade de código que:» Realiza uma operação específica» É identificada por um nome 8

3.2.1. Estrutura de Programas em C Função No programa potencia.c existem duas funções» int potencia (int n, int k)» main ( ) Funções de C retornam valores através do comando return» Ex.: return (x); x é uma variável 9

3.2.1. Estrutura de Programas em C Programa principal Todo programa C contém uma função chamada main» Especifica o ponto inicial para execução do programa» Chamada quando o programa começa sua execução Quando main termina sua execução, o programa termina» Pode retornar um valor do tipo int 10

Declaração de constantes 3.2.2.1. Constantes São globais» Válidas em qualquer linha do programa Programas podem incluir definições que se aplicam a todo o programa (constantes) #define LimInf 0 #define LimSup 12 Formato: #define nome valor» Define nome como equivalente a valor 11

3.2.2.1. Constantes Vantagens em associar nomes simbólicos a constantes O leitor do programa entende mais facilmente o significado das constantes A centralização de todas as definições no início do arquivo facilita a alteração do valor associado ao nome» Ex.: para alterar os limites do programa potencia.c é necessário apenas mudar os valores das constantes 12

3.2.2.2. Variáveis Uma das principais características dos programas é que eles manipulam dados Programas precisam armazenar dados Programas trabalham com vários tipos de dados diferentes» Números» Texto» Estruturas de dados mais sofisticadas Geralmente, dados são armazenados em variáveis 13

3.2.2.2. Variáveis /* Programa: Apresenta o valor de uma soma simples*/ # include <stdio.h> main () { int valor; int a, b; } a = 7; b = 2; valor = a + b; printf ( Valor da expressao: %d \n, valor); // soma 14

3.2.2.2. Variáveis /* Programa: imprime operacoes basicas sobre dois numeros */ # include <stdio.h> main () { int soma, div, sub, mult, resto; int a, b; } a = 7; b = 2; soma = a + b; sub = a - b; mult = a* b; div = a / b; // soma // subtracao // multiplicacao // divisao // resto resto = a % b; printf ( Soma = %d, subtracao = %d, multiplicacao = %d, divisao o = %d, resto = %d \n, soma, sub, mult, div, resto); 15

3.2.2.2. Variáveis Exercício 3.2.1. Escreva e implemente um programa em C que imprima a soma e a média aritmética dos números 56, 109 e 345. 16

3.2.2.2. Variáveis Toda variável utilizada no programa deve ser declarada Sintaxe para a declaração de variáveis em C tipo lista_de_nomes; Em C, o valor inicial de uma variável é indefinido Exceção: int result = 0; Valor inicial de uma declaração é chamado de inicializador 17

3.2.2.2. Variáveis Uma variável tem as seguintes propriedades: Nome Tipo Tempo de vida Escopo (área de atuação)» Variáveis locais» Variáveis globais 18

3.2.2.2. Variáveis Convenções para nomes Identificadores: nomes usados para variáveis, constantes, tipos e funções Regras» Nome deve iniciar com letra ou underscore (_)» Caracteres de um nome devem ser letras, números ou underscores» Palavras chaves não podem ser utilizadas como nomes 19

3.2.2.2. Variáveis 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 20

3.2.2.2. Variáveis Convenções para nomes Letras maiúsculas e minúsculas são consideradas diferentes Estilo de programação pode ser melhorado adotando convenções» Exemplos que podem ser adotados (não obrigatório): Nomes de variáveis e tipos de dados começam com letras minúsculas Nomes de funções e constantes começam com letras MAIÚSCULAS 21

3.2.2.2. Variáveis Variáveis locais Declaradas no início de uma função Escopo é a função onde ela aparece» Outras funções não têm acesso direto a elas Exceto as funções internas Tempo de vida = enquanto a função estiver ativa» Chamada da função aloca espaço para as variáveis» Término de execução da função libera o espaço alocado 22

3.2.2.2. Variáveis Variáveis globais Aparecem fora de qualquer definição de função Escopo é o resto do arquivo onde é declarada Tempo de vida é o tempo de execução do programa Não devem ser utilizadas em excesso Permite que funções possam interferir umas com as outras 23

3.2.2.3. Tipos de Dados A linguagem C requer que todas as variáveis sejam declaradas para restringir seus conteúdos a valores de um tipo particular Tipos de dados são definidos por duas propriedades: Domínio» Conjunto de valores que pertencem ao tipo Conjunto de operações» Operações que podem ser realizadas sobre valores do tipo» Define o comportamento do tipo 24

3.2.2.3. Tipos de Dados Exemplo: O domínio do tipo int inclui todos os inteiros (... -2,- 1,0,1,2...) permitidos pelo hardware do computador Conjunto de operações inclui, por exemplo, o conjunto das operações aritméticas padrão (adição, subtração, multiplicação e divisão) Outros tipos podem ter domínio e conjunto de operações diferentes 25

3.2.2.3. Tipos de Dados Muito do poder de linguagens de alto nível vem da possibilidade de definir novos tipos a partir dos tipos existentes ANSI possui um conjunto de tipos fundamentais (tipos atômicos) Pedaços para a construção dos tipos de C Ex.: integer, floating-point e char 26

3.2.2.3. Tipos de Dados Tipo inteiro valores inteiros (...,-1,0,1,2,3,...) pode ter» 16 bits comporta 65.536 valores (2 16 )» 32 bits comporta 4.294.962.2.296 valores (2 32 ) 27

3.2.2.3. Tipos de Dados unsigned int (16 bits) 0 até 65.535 short int (16 bits) -32.768 até 32.767 int (16 bits ou 32 bits) (depende da máquina) unsigned long (32 bits) 0 até 4.294.962.2.295 long int (32 bits) -2.143.483.648 até 2.143.483.647 28

3.2.2.3. Tipos de Dados Tipo inteiro Bases numéricas» Valores inteiros geralmente são definidos na base decimal» Base hexadecimal: começar o número com 0x Exemplo: 0xFF 29

3.2.2.3. Tipos de Dados Tipo ponto flutuante Representam números reais Conseguem representar uma grande quantidade de números float» Uso da notação científica» 32 bits» Representatividade: 3,4 x 10-38 e 3,4 x 10 +38» 6 a 7 dígitos de precisão double» 64 bits» Representatividade: 1,7 x 10-308 e 1,7 x 10 +308» 14 a 15 dígitos de precisão» long double 80 bits 30

3.2.2.3. Tipos de Dados Tipos caractere (char) Símbolos individuais que podem aparecer no vídeo ao ser digitados no teclado» Letras, dígitos, marcas de pontuação, barra de espaço, return, etc.» Tamanho: 1 byte» Internamente, estes valores são representados associando cada caractere a um código ASCII» Tradução é automática 31

3.2.2.3. Tipos de Dados 32

3.2.2.3. Tipos de Dados Caracteres em C Caracteres padrão» A, b, 8 Caracteres especiais (sequências de escape)» Sequências de dois caracteres (começando com o caractere \ ) Sequência de caracteres = string 33

3.2.2.3. Tipos de Dados 34