Linguagem C. Compiladores e Interpretadores

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

Algoritmos e Programação Estruturada

Linguagem de Programação C

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

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

Algoritmos e Programação

No Windows há basicamente dois tipos de programas de usuário:

Capítulo 2 Operadores. A função scanf()

A Linguagem C. A forma de um programa em C

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

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

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

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

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

Linguagens de Programação I

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

Programação Estruturada

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

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

Utilização da Linguagem C

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

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Programação I A Linguagem C. Prof. Carlos Alberto

Linguagem C: Introdução

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Tópicos em C. Eliade F. Lima

Linguagem de Programação. Thiago Leite Francisco Barretto

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

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

Linguagem C. Introdução à Programação C. Variáveis. Identificadores. Identificadores VARIÁVEIS E TIPOS DE DADOS

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

Características da Linguagem C

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

Conhecendo a Linguagem de Programação C

Conceitos básicos. Computação eletrônica: Gurvan Huiban

Linguagem C. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

ALGORITMOS AULA 01. Baseado nas aulas do Prof. Jorgiano Vidal

A linguagem C (visão histórica)

3. Linguagem de Programação C

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

Linguagens de Programação

Introdução à Programação

GFM015 Introdução à Computação Algoritmos e Programação / Estrutura de Controle de Fluxo / Ambiente de Programação

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

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

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

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

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

Disciplina de Algoritmos e Programação

Introdução a Programação de Jogos

Introdução à Computação MAC0110

Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C

Aula 4 Introdução ao C

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

Programação científica C++

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

Introdução a Linguagem C

Aula 3 Primeiros programas

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

Estrutura do programa

Linguagem de Programação I. Aula 06 Linguagem C: Tipos de Dados

Ambiente de desenvolvimento

Linguagem de Programação C

Introdução à Linguagem C

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

Revisão Linguagem C Parte 1

Revisão C++ - Parte 1

Princípios de Desenvolvimento de Algoritmos MAC122

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ).

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

3. Linguagem de Programação C

Algoritmos RESUMO - LINGUAGEM C

Estrutura de Programas e Tipos de Dados Simples

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

INSTITUTO FEDERAL DE! EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE

Computação. Introdução a C e Variáveis Inteiras

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

Introdução à Programação

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

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

Working 03 : Conceitos Básicos I

Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Profa Rosana Braga

ITENS FUNDAMENTAIS Programando em C++

Métodos Computacionais

SSC 0301 IC para Engenharia Ambiental

Conceitos Básicos Linguagem C

Slides trabalhados durante a quinta aula

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Prof. Marcelo Machado Cunha Faculdade Pio Décimo

Introdução à Linguagem C

Conceitos básicos de programação

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

LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO

Introdução à Linguagem C. Adaptado de Deise Saccol

4. Estruturas Fundamentais de Programação em C

Puca Huachi Vaz Penna

Transcrição:

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. C é uma linguagem utilizada para programação de qualquer tipo de sistema como Sistemas Operacionais (Linux, Unix), Planilhas, Processadores de Texto, etc. Compiladores e Interpretadores A maneira de se comunicar com o computador chama-se programa e a única linguagem que o computador entende chama-se linguagem de máquina. Portanto todos os programas que se comunicam com a máquina devem estar em linguagem de máquina. Há duas formas de tradução: Interpretadores: lê a primeira instrução do programa, faz uma consistência de sua sintaxe e se não houver erro converte-a para uma linguagem de máquina para executá-la. Segue, então, para a próxima instrução, repetindo o processo até que a última instrução seja executada ou a consistência aponte algum erro. O interpretador precisa estar presente todas as vezes que vamos executar o programa e trabalho de checagem e tradução deverá ser repetido. Compiladores: lê a primeira instrução do programa, faz uma consistência de sua sintaxe e se não houver erro converte-a para a linguagem de máquina, e em vez de executá-la, segue para a próxima instrução repetindo o processo até que a última instrução seja atingida ou a consistência aponte um erro. Se não houver erros ele gera um programa em disco com o sufixo.obj com as instruções já traduzidas. Depois o linkeditor agrega rotinas em linguagem de máquina que lhe permitirão a execução criando em disco o.exe (este não pode ser alterado). DEVC++ Criar um Programa Clique no botão para criar um novo projeto, conforme figura 1(a). Selecione o tipo de aplicação a ser desenvolvida, Console Application, a linguagem de programação, C Project, e o nome do projeto, conforme figura 1(b). Finalmente, escolha o diretório onde os arquivos do projeto serão armazenados.

(a) Criação do projeto. (b) Escolha do tipo de aplicação (console), linguagem (C) e nome do projeto. (c) Escolha do diretório do projeto. Figura 1 - Criação de novo projeto. Disciplina: Programação Estruturada 1

O Dev-C++ preenche já um código que normalmente você vai precisar para testar/rodar o seu programa em consoles do MS Windows. Como indica a figura 2. Figura 2 - Preenchimento automático do arquivo fonte pelo Dev-C++. Compilação e execução Para compilar o arquivo fonte feito clique no botão de compilação conforme a figura 3 (a). Durante a compilação, aparece a janela da figura 3 (b). Ao final da compilação, a janela deve estar igual à figura. Em particular, os campos Errors e Warnings devem estar com o valor 0. Se não, olhe na aba de Log o erro, ou o aviso, e corrija seu código para eliminá-lo. Feche a janela de compilação. (a) Botão para compilar o projeto. (b) Compilação bem sucedida do projeto. Figura 3 - Compilação projeto. Observação: Ao rodar este programa pelo sistema de janelas do MS Windows clicando no seu ícone, você vai fazer com que o MS Windows crie uma janela DOS para rodar o Disciplina: Programação Estruturada 2

programa, execute o programa e feche a janela depois que o programa terminou. Na maioria dos computadores novos, isto se passa tão rápido que você pode nem perceber que ele rodou. É por esta razão que o Dev-C++ já incluiu no código de novos projetos a chamada da função system() com o argumento "PAUSE" que provoca uma parada antes do término do programa para que o usuário do sistema de janelas possa ver o resultado do programa. Se você quiser, use o system("pause"). Mas lembre-se de contar para o compilador onde estão as definições necessárias para usar esta função: Insira um #include <stdlib.h>. Code::Blocks Uma vez obtida a tela inicial do Code::Blocks clique em File > New > File... conforme ilustrado abaixo. Na próxima janela, escolha C/C++ source e clique em Go. Disciplina: Programação Estruturada 3

Clique em Next para as duas próximas janelas, em especial para a segunda janela a seguir, se certifique que linguagem selecionada é a C. Na janela a seguir, digite um nome para o arquivo de programa a ser digitado. Para tanto, clique no quadrado com... que aparece ao lado da caixa com título Filename with full path: e digite um nome de arquivo. Disciplina: Programação Estruturada 4

Clique agora em Salvar e depois em Finish. Na janela que foi criada você vai digitar, compilar e executar seu primeiro programa em C. Vamos compilar o seu programa. Você deve clicar em Build > Compile current file Disciplina: Programação Estruturada 5

se tudo der certo, na janela de log abaixo do programa, haverá a indicação de que o programa foi compilado com sucesso: 0 errors, 0 warnings Com o programa compilado sem erros, a pasta onde foi salvo o arquivo contém agora o programa executável ".exe." Para executar o programa clique no botão Build > Run da janela principal do Code::Blocks. Deverá surgir uma nova janela, de DOS, mostrando a execução de seu programa, como pode ser visto na figura abaixo. Note que na janela do DOS aparece a mensagem Disciplina: Programação Estruturada 6

Pressione qualquer tecla para continuar... Depois de conferir o resultado, pressione qualquer tecla para que a janela do DOS desapareça. Se a janela do DOS não desaparecer, para fechá-la clique no X, no canto superior direito da mesma. A estrutura Básica de um Programa 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 main( ): deve existir em algum lugar do programa, pois marca o início do programa. Primeiro Programa main ( ) printf( Primeiro Programa ); onde: printf( Primeiro Programa ); é uma instrução e as instruções em devem ser encerradas por ;. printf( ) é uma função de E/S (Entrada e Saída), em que no interior dos parenteses estão as informações passadas pelo programa, neste caso main( ), a função printf ( ), isto é, Primeiro Programa, que chamamos de argumento. Quando o programa encontra a linha printf( Primeiro Programa );, ele passa o controle para a função printf ( ), que irá imprimir na tela do computador e quando encerra a execução volta novamente para o programa. Sintaxe: printf( expressão de controle,lista de argumentos); Exemplo: main( ) printf( Este e o numero dois: %d,2); Saída: Este e o numero dois: 2 Disciplina: Programação Estruturada 7

Esta função printf ( ), ilustrada acima possui 2 argumetos, onde o primeiro é Este e o numero dois: %d e o segundo o 2, mas ela pode possuir vários argumentos, que devem ser separados por,. A expressão de controle pode conter caracteres que serão exibidos na tela e códigos de formatação que indicam o formato em que os argumentos devem ser impressos. Na função printf ( ), acima a expressão de controle é o %d, que solicita a printf ( ) que imprima o segundo argumento em formato decimal. Abaixo está listado algumas expressões de controle de printf ( ): Alguns códigos especiais: %c Caractere simples %d Decimal %f Ponto flutuante %s Cadeia de caracteres \n Nova linha \ Aspas \\ Barra /* Comentários %% % Constantes e Variáveis Constante é definido como um valor fixo e inalterável. Exemplo: 8, Primeiro Programa, x. Variáveis são espaços de memória reservados para armazenar um certo tipo de dado e tendo um nome referenciar o seu conteúdo, ou seja, espaço de memório que pode conter, a cada tempo, valores diferentes. Exemplo: main ( ) int num; num = 2; printf( Este e o numero dois: %d,num); Chamamos de declaração de variáveis uma instrução para reservar uma quantidade de memória apropriada para armazenar o tipo especificado e indicar que o seu conteúdo será referenciado pelo nome dado a esta variável, pois todas as variáveis devem ser declaradas antes de ser utilizadas. Existem alguns tipos de variáveis, que informam a quantidade de memória, em bytes, que esta irá ocupar e a forma como o conteúdo será armazenado: Disciplina: Programação Estruturada 8

Tipo char int float void Descrição equivale ao tipo caractere equivale ao tipo inteiro equivale ao tipo real tipo nenhum Exemplo: evento.c main ( ) int evento; char corrida; float tempo; evento = 5; corrida = c ; tempo = 27.25; printf("o tempo vitorioso na eliminatoria %c",corrida); printf("\n da competicao %d foi %f.",evento,tempo); Palavras-Chaves auto break case char const continue do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while Exercícios 1. Escreva um programa que contenha uma única instrução e imprima na tela: Esta e a linha um. Esta e a linha dois. 2. Escreva um programa que declare 3 variáveis inteiras e atribua os valores 1,2,3 a elas; 3 variáveis caracteres e atribua a elas as letras a,b,c; finalmente imprima na tela: As variaveis inteiras contem os numeros: 1, 2, 3. As variaveis caracteres contem os valores: a, b, c. Disciplina: Programação Estruturada 9

Função scanf( ) Função de E/S, que permite ler dados formatados da entrada padrão (teclado). Sintaxe: scanf ( expressão de controle, lista de argumentos); onde os argumentos devem ser endereços de variáveis. A expressão de controle deve conter códigos de formatação, precedidos por um sinal %. A lista de argumentos deve consistir somente nos endereços das variáveis. O operador de endereços &, é o endereço do operando. Exemplo: int n; /* variável n, do tipo inteiro n = 2; /* n recebe o valor 2 n /*se for referenciado assim retorna o valor 2 &n /*se for referenciado assim retorna o endereço onde n está guardado.*/ main() int num; num = 2; printf( Valor = %d, Endereço = %u, num, &num); Saída: Valor = 2, Endereço = 1370. A seguir estão alguns códigos de formatação da função scanf ( ): Código Função %c Leia um único caractere. %d Leia um inteiro decimal. %s Leia uma série de caracteres %f Leia um número em ponto flutuante. Exemplo: idade.c main() float anos, dias; printf( Digite a sua idade em anos: ); /*Necessário que digite [enter] para terminar a leitura*/ scanf( %f,&anos); dias = anos * 365;; printf ( Sua idade em dias e: %.0f.\n,dias); Em algumas situações a função scanf ( ) não se adapta perfeitamente pois você precisa pressionar [enter] depois de sua entrada para que scanf ( ) termine a leitura. Neste caso existem outras funções: 10

Operadores Aritméticos Os operadores aritméticos binários, ilustrados abaixo, são aqueles que operam sobre dois operandos: = Atribuição + Soma - Subtração * Multiplicação / Divisão % Módulo (devolve o resto da divisão) O operador unário, opera sobre um operando somente e é utilizado para indicar a troca de sinal. Exemplo: Outro exemplo: main() - Menos unário num = -1; num1 = - num; /* então, num1 = 1 int ftemp, ctemp; printf ( Digite a temperatura em graus Fahrenheit:"); scanf ( %d,&ftemp); ctemp = (ftemp 32) *5/9; printf( Temperatura em graus Celsius: %d,ctemp); Operadores de Incremento ( + + ) e Decremento ( -- ) + + Incrementa de 1 seu operando - - Decrementa de 1 seu operando Estes operadores trabalham de 2 modos: Pré-fixado: antes da variável. ++ n: incrementa antes da variável ser utilizada. Pós-fixado: depois da variável. n ++: incrementa depois da variável ser utilizada. 11

Exemplos: n = 5 x = n++; printf ( x = %d n = %d,x,n); Saída: x = 5 n = 6 n = 5 x = ++n; printf ( x = %d n = %d,x,n); Saída: x = 6 n = 6 Operadores de Atribuição ( + =, - =, * =, /=, %=) Os operadores são usados com um nome da variável à esquerda e uma expressão à direita. x: variável exp: expressão op: operador(+, -, *, / ou %) x op = exp equivale a x = (x) op (exp) Exemplos: i+ = 2 i = i + 2 x* = y + 1 x = x * (y+1) t/=2.5 t = t / 2.5 p% =5 p = p%5 d - =3 d = d 3 Operadores Relacionais São utilizados para fazer comparações. > Maior >= Maior ou igual < Menor <= Menor ou igual == Igualdade!= Diferente Observação: Variável booleana: assume V (verdadeiro) ou F (falso), ou seja, 1 se verdadeiro e 0 se falso. 12

Exemplo: main() Saída int verdade, falso; verdade = (15<20); falso = (15==20); printf( Verdadeiro = %d, Falso = %d, verdade, falso); Verdadeiro = 1, Falso = 0 Atenção: Operadores aritméticos tem prioridade aos operadores relacionais. Comentários /*Comentários ou /*Comentários Comentários*/ Exercícios 1. Escreva um programa no qual você digita o ano de nascimento e ele te informa quantos anos você tem ou vai fazer neste ano. 2. Escreva um programa que solicite 3 números em ponto flutuante e imprima a média aritmética. 3. Escreva um programa que receba 4 números inteiros, calcule e mostre a soma desses números. 4. Faça um programa que receba 3 notas, calcule e mostre a média aritmética entre elas. 5. Faça um programa que receba o salário de um funcionário, calcule e mostre o novo salário, sabendo-se que este sofreu um aumento de 25%. 6. Faça um programa que calcule e mostre a área de um triângulo. Sabe-se que: Área = (base * altura)/2 7. Faça um programa que calcule e mostre a área de um círculo. Sabe-se que: A = R 2 e = 3,1415 8. Faça um programa que receba o custo de um espetáculo teatral e o preço do convite desse espetáculo. Esse programa deve calcular e mostrar a quantidade de convites que devem ser vendidos para que pelo menos o custo do espetáculo seja alcançado. 9. Faça um programa que receba o preço de um produto, calcule e mostre o novo preço, sabendo-se que este sofreu um desconto de 10%. 10. Faça um programa que calcule e mostre a área de um quadrado. Sabe-se que: A = lado * lado. 13