Linguagem de Programação C Aula 08 Diogo Pinheiro Fernandes Pedrosa Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais 13 de novembro de 2009
Introdução O que é uma linguagem de programação? Algoritmo Linguagem de Programacao Programa
Introdução Conjunto de códigos que, quando transformados em programas, tornam-se compreensíveis pelo computador; Se o programa foi construído inteiramente baseado em um algoritmo, então ele irá realizar exatamente o que o algoritmo especificou; Há várias linguagens de programação: C e C++; Java; Python; Pascal; Delphi; outros...
Linguagem C Criada em 1972 nos Laboratórios Bell (EUA); Linguagem de alto nível; Foi projetada para elaborar programas estruturados e modulares; Utilizada em vários sistemas operacionais.
Compiladores e Interpretadores Após um algoritmo ser codificado em uma linguagem de programação, ele precisa ser transformado em um programa executável (linguagem de máquina); Requer a utilização de um compilador e de um linker. Algoritmo Linguagem de programacao Arquivo fonte Compilador Arquivo objeto Linker Programa executavel
Compiladores e Interpretadores Compilador Verifica se o arquivo fonte não tem erro de sintaxe em sua codificação; Linker Acrescenta arquivos de biblioteca ao arquivo objeto e cria o arquivo executável; Tais arquivos de biblioteca são funções padronizadas, já implementadas, que permitem que o programa possa executar várias tarefas sem a necessidade do programador implementá-las (Exemplo: escrita de dados no disco rígido).
Compiladores e Interpretadores Interpretadores São programas que executam o arquivo fonte, linha por linha, sem a necessidade de compilar e gerar um arquivo executável. Observação Um programa executável somente será gerado quando não houver erros de compilação ou ligação.
Como criar um arquivo executável? 1. Escrever o algoritmo propondo a solução do problema; 2. Traduzir o algoritmo para a linguagem de programação C utilizando algum editor apropriado. O arquivo fonte deve ser salvo com a extensão.c ; 3. Compilar o arquivo fonte, gerando assim o arquivo objeto (com extensão.obj ); 4. Ligar o arquivo objeto, gerando assim o arquivo executável (.exe ).
Ferramentas Ambiente Dev-C++ ambiente de desenvolvimento integrado (Integrated Development Environment IDE): Ferramenta open source; Ambiente desenvolvido para sistema Windows; Incorpora editor, compilador e ligador em um mesmo ambiente; Adequado para programas simples para o desenvolvimento de programas complexos para comercialização, outros ambientes proprietários são mais apropriados.
Estrutura Básica de um Programa Um programa em C consiste em uma ou mais funções; Todas as funções são obrigadas a possuirem o nome, parêntesis para delimitar os dados de entrada, e chaves delimitadoras do corpo da função; Todos os comandos e declarações dentro do corpo da função são obrigados a finalizarem com ; ; A linguagem C exige a existência de, pelo menos, uma função principal que sempre é chamada de main(). main() {... }
Estrutura Básica de um Programa Primeira instrução função printf(); Função para exibição de dados no monitor. main() { printf("meu primeiro programa!"); }
Estrutura Básica de um Programa Sintaxe: printf( express~ao de controle, lista de argumentos) A expressão de controle possui os caracteres que serão exibidos na tela e os códigos de formatação que indicam o formato com que os argumentos serão impressos.
Estrutura Básica de um Programa Exemplo: main() { printf("meu primeiro programa!"); printf("este e o numero dois: %d", 2); printf("%s esta a %d milhoes de milhas do sol", "Venus", 67); } printf("a letra %c pronuncia-se %s", j, "jota");
Estrutura Básica de um Programa Exemplo mais coveniente: main() { printf("meu primeiro programa!"); printf("\neste e o numero dois: %d", 2); printf("\n%s esta a %d milhoes de milhas do sol", "Venus", 67 } printf("\na letra %c pronuncia-se %s", j, "jota");
Códigos Códigos Especiais \n nova linha \t tabulação \" aspas Códigos para Exibição %c caractere simples (letra) %d decimal %f número com ponto flutuante (casas decimais) %s cadeia de caracteres (frases ou palavras) %lf número com ponto flutuante longo
Variáveis e Constantes Variável Consiste em um espaço da memória do computador que recebe algum dado (letra, frase, número, etc.); Esse valor pode ser alterado no programa. Constante Espaço na memória que, após receber seu valor, não pode ser alterado no programa.
Variáveis e Constantes Os programas utilizam variáveis e constantes: main() { int num; num = 2; // Declaraç~ao da variável // Atribuiç~ao de valor } printf("\neste e o numero dois: %d", num); Uma variável deve ser declarada pelo seu tipo e pelo seu nome.
Variáveis e Constantes Tipos de Variáveis char caracteres int valores decimais inteiros (sem ponto flutuante) float valores numéricos com ponto flutuante (casas decimais) double ponto flutuante longo void sem valor
Variáveis e Constantes Exemplo: main() { int evento; char corrida; float tempo; evento = 5; corrida = C ; tempo = 27.25; } printf("o tempo vitorioso na eliminatoria %c", corrida) printf("\nda competicao %d foi $f.", evento, tempo);
Nomes de Variáveis e Constantes Regras: Pode-se usar quaisquer letras (maiúsculas e/ou minúsculas) combinadas com números para formar o nome de uma variável ou caracter; O primeiro caractere do nome deve ser obrigatoriamente uma letra ou o caractere de sublinhar ( ); A linguagem C faz diferença entre letras maíusculos e minúsculas peso Peso PESO Uma variável ou constante não pode ter o mesmo nome de alguma palavra-chave da linguagem C.
Palavras-chave em C auto break case char const continue default 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ício Escreva um programa que imprima na tela um dois tr^es Escreva um programa que declare 3 variáveis inteiras e atribua a elas os valores 1, 2 e 3. Declare também três variáveis caracteres e atribua a elas as letra a, b e c. Em seguida, utilizando essas variáveis na função printf(), imprima na tela: As variaveis inteiras contem os numeros 1, 2 e 3 As variaveis caracteres contem os valores a, b e c
Leitura de Dados em C A leitura de dados a partir do teclado é realizada através da utilização da função scanf(); scanf( express~ao de controle, lista de argumentos) A expressão de controle contém os códigos especiais utilizados na função printf(); A lista de argumentos consiste nas variáveis que foram declaradas no programa, precedidas do símbolo &.
Leitura de Dados em C Exemplo: main() { int num; printf("digite um numero: "); scanf("%d", &num); printf("o numero e %d", num); }
Leitura de Dados em C Observação As funções printf() e scanf() fazem parte de um grupo de funções de IO (Input e Output entrada e saída); Tais funções fazem parte da biblioteca de funções de entrada e saída; Alguns compiladores especificam que o arquivo que possui essas funções seja incluído no arquivo fonte; Para essas funções de IO, o arquivo é stdio.h.
Leitura de Dados em C Exemplo: #include <stdio.h> main() { int num01; int num02; printf("digite dois numeros: "); scanf("%d %d", &num01, &num02); printf("os numeros sao %d e %d!", num01, num02); printf("\n"); }
Leitura de dados em C Outra função de entrada: getche(); Essa função não aceita argumentos de entrada; Lê apenas um único caractere do teclado sem a necessidade de pressionar ENTER; Pode ser utilizado no Dev-C++ para melhor visualizar o resultado na janela.
Leitura de Dados em C Exemplo: #include <stdio.h> main() { int num01; int num02; char c; printf("digite dois numeros: "); scanf("%d %d", &num01, &num02); printf("os numeros sao %d e %d!", num01, num02); printf("\n"); } c = getche();
Operadores Operadores Binários = Atribuição de valor + Adição Subtração Multiplicação / Divisão % Módulo (devolve o resto da divisão inteira) Operadore Unário Inversão de sinal
Exemplo #include <stdio.h> main(){ int ftemp, ctemp; char c; printf("\ndigite temperatura em graus Fahrenheit: "); scanf("%d", &ftemp); ctemp = (ftemp - 32)* 5/9; printf("\ntemperatura em graus Celsius e %d!", ctemp); c = getche(); }
Exercícios 1. Faça um programa que receba três notas e que calcule e exiba a média ponderada entre elas, de acordo com a equação a seguir: m = 2 n 1 + 3 n 2 + 4 n 3 9 2. Faça um programa que receba o salário de um funcionário e o percentual de aumento, calcule e mostre o valor do aumento e do novo salário.