A Linguagem C. A forma de um programa em C

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

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

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

Linguagem de Programação C

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

Algoritmos e Programação

3. Linguagem de Programação C

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

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

Programação Estruturada

4. Estruturas Fundamentais de Programação em C

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

ECT1203 Linguagem de Programação

LINGUAGEM DE PROGRAMAÇÃO C AULA 2. Professor: Rodrigo Rocha

Programação científica C++

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

Linguagem C: Introdução

A linguagem C (visão histórica)

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

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

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

Linguagens de Programação

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

Introdução à Linguagem C

Introdução à Programação

Estrutura básica de um programa Instruções do Programa Sintaxe das instruções Diretivas apenas o contexto Variáveis e Constantes Tipos e modificadores

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

Revisão Linguagem C Parte 1

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

Tópicos em C. Eliade F. Lima

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

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

Introdução à Programação

Linguagem de Programação. Thiago Leite Francisco Barretto

Prof. Marcelo Machado Cunha Faculdade Pio Décimo

Aula 3 Constantes e funções de E/S

Métodos Computacionais

Disciplina de Algoritmos e Programação

Algoritmos e Estruturas de Dados I (DCC/003) Introdução à Programação de Computadores. Aula - Tópico 1

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

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

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

Linguagem C. André Tavares da Silva.

Utilização da Linguagem C

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

Linguagens de Programação I

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

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

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

Aula 03: Introdução a C

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

Introdução à Computação MAC0110

SSC304 Introdução à Programação Para Engenharias. Introdução a Linguagem C. GE4 Bio

Laboratório de Programação II

Introdução à Linguagem C

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

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

Ambiente de desenvolvimento

Puca Huachi Vaz Penna

Princípios de Desenvolvimento de Algoritmos MAC122

Variáveis e Operadores em C

Faculdade de Computação

Apostila de Linguagem C (Versão Incompleta)

TECNOLOGIA EM REDES DE COMPUTADORES. computadores. Aula 5

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

4 Variáveis. Unesp Campus de Guaratinguetá

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

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

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

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

Linguagem C. Compiladores e Interpretadores

Introdução à linguagem C

Disciplina de Algoritmos e Programação

Slides trabalhados durante a quinta aula

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

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

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

Linguagem C Variáveis, Tipos de Dados, Comandos e Estrutura Linear

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

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

Linguagem C Entrada/Saída (console)

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

Linguagem C Variáveis, Tipos de Dados, Comandos e Estrutura Linear

Programação Estruturada

Linguagem de Programação C

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

Linguagem C - Introdu ção

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C

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

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

Programação Estruturada Aula - Tipos, Constantes, Variáveis e Identificadores

CCO 016 / COM 110 Fundamentos de Programaçã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

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

Introdução à Programação Aula 04. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

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

Características da Linguagem C

Laboratório de Introdução à Ciência da Computação I

Transcrição:

A Linguagem C Criada em 1972 por D. M. Ritchie e K. Thompson. Tornou-se uma das mais importantes e populares, principalmente pela portabilidade e flexibilidade. Foi projetada para o desenvolvimento de programas estruturados e modulares. A forma de um programa em C A linguagem C, como todas as outras linguagens de programação, consiste de palavras reservadas e regras de sintaxe que se aplicam a cada palavra reservada. Uma palavra reservada é essencialmente um comando e, na maioria das vezes, as palavras reservadas de uma linguagem definem o que pode ser feito e como pode ser feito. Na linguagem C são 32 palavras reservadas. Todas as palavras reservadas do C são minúsculas. Uma palavra reservada não pode ser usada para nenhum outro propósito em um programa. A tabela abaixo mostra as palavras reservadas conforme definido pelo padrão ANSI para a linguagem C. 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 A linguagem C é baseada no conceito de funções. Um programa C é um conjunto de funções. Uma biblioteca é um arquivo contendo as funções padrão que seu programa pode usar. Essas funções incluem todas as operações de entrada e saída (E/S) e também outras rotinas úteis para realizar as tarefas mais comumente necessárias. Compiladores A única linguagem que o computador entende é a linguagem de máquina. Programas escritos em C (programa fonte) devem ser traduzidos para a linguagem de máquina. O programa que faz esta tradução é chamado compilador. O compilador lê o programa fonte inteiro e o traduz para um programa com a extensão.obj (programa objeto). Quando se usa uma função que não faz parte do programa que você escreveu (ou seja, que pertence a uma das bibliotecas do C), é necessário agregar ao programa objeto as rotinas correspondentes à essas funções. Este trabalho é feito por um programa chamado link-editor que, além de adicionar as rotinas necessárias ao programa objeto, cria um programa com a extensão.exe (programa executável). O programa executável está em linguagem de máquina e pode ser executado diretamente pelo computador. Como criar um programa executável 1. Digitar seu programa com auxilio de um processador de textos. Gravar em disco atribuindo a ele um nome com a extensão.c. O programa gerado é chamado programa fonte. 2. Compilar o programa fonte criando um programa com a extensão.obj em disco. O programa gerado é chamado programa objeto. 3. Link-editar o programa objeto criando um programa com a extensão.exe em disco. O programa gerado é chamado programa executável. DCT/UFMS Prof. Marcos Alves 1

Estrutura Básica de um Programa em C A função Um programa em C consiste de uma ou várias funções. A função deve existir em algum lugar de seu programa e marca o início da execução do programa. primeira função a ser executada início do corpo da função término do corpo da função Os parênteses após o nome indicam que esta é uma função. Toda função C deve ser iniciada por um abre-chaves () e encerrada por um fecha-chaves (). O nome da função, os parênteses e as chaves são os únicos elementos obrigatórios de uma função. Vamos adicionar uma instrução ao nosso programa: printf( Primeiro programa ); Todas as instruções devem estar dentro das chaves e são executadas na ordem em que as escrevemos. As instruções em C são sempre encerradas por um ponto-e-vírgula (;). A função printf() A função printf() é uma das funções de E/S que podem ser usadas em C. Esta função é usada por programas que realizam saída para a tela do computador. A função printf() está definida na biblioteca stdio.h. Então, para que o seu programa possa utilizar a função printf() é necessário incluir a biblioteca stdio.h ao seu programa. printf( Primeiro programa ); No interior dos parênteses estão as informações passadas pela função para a função printf(). Essas informações são chamadas de argumento da função. Sintaxe: printf( expressão de controle, lista de argumentos); 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. Exemplo: printf( Este é o número dois: %d, 2); Neste exemplo, o código de formatação %d solicita ao printf() imprimir o segundo argumento em formato decimal. DCT/UFMS Prof. Marcos Alves 2

A função printf() pode receber um número variável de argumentos, isto é, a expressão de controle e mais tantos argumentos quantas especificações de formato a expressão de controle contiver. Cada argumento deve ser separado por uma vírgula (,). A tabela abaixo mostra alguns códigos de formatação que podem ser utilizados pelo printf(): código significado %d decimal %f ponto flutuante %c caracter simples %s cadeia de caracter %e notação científica %o octal %u decimal sem sinal %x hexadecimal %ld decimal longo %lf ponto flutuante longo O código de formatação pode ser colocado em qualquer lugar na expressão de controle: printf( O numero %d e decimal, %f e ponto flutuante, 10, 10.78); Imprimindo cadeia de caracteres: printf( %s esta a %d milhões de milhas \n do sol, Venus, 67); Além do código de formatação, a expressão de controle contém um conjunto de caracteres estranho: \n. O \n é um código especial que informa a printf() que o restante da impressão deve ser feito em uma nova linha. Os caracteres que não podem ser obtidos diretamente do teclado para dentro do programa (como a mudança de linha) são escritos em C com a combinação do sinal \ (barra invertida) com outros caracteres, como mostra a tabela abaixo: Programa com mais de uma instrução: códigos especiais significado \n nova linha \r retorno do cursor \t tabulação horizontal \b retrocesso \v tabulação vertical \a sinal sonoro \0 nulo DCT/UFMS Prof. Marcos Alves 3

printf( A letra %c, j ); printf( pronuncia-se %s, jota ); Note que j é delimitado por aspas simples enquanto jota é delimitado por aspas duplas. Isto indica ao compilador como diferenciar um caracter de uma cadeia de caracteres. Constantes e Variáveis Na linguagem C, constantes referem-se a valores fixo que não podem ser alterados pelo programa. O modo como cada constante é representada depende do seu tipo. Constantes caracter são colocadas entre aspas simples, por exemplo, j. Constantes cadeia de caracter (ou string) são colocadas entre aspas duplas, por exemplo, Venus e jota. Constantes inteiro são especificadas como números sem componente fracional, por exemplo, 10 e 67. Constantes ponto flutuante requerem o uso de ponto decimal seguido pelo componente fracional do número, por exemplo, 10.78. As variáveis são o aspecto fundamental de qualquer linguagem de computador. Uma variável em C é um espaço de memória reservado para armazenar um certo tipo de dado e tendo um nome para referenciar o seu conteúdo. Uma variável pode conter, a cada instante, valores diferentes. Tipos de Variáveis O tipo de uma variável informa a quantidade de memória, em bytes, que ela irá ocupar e a forma como o seu conteúdo será armazenado. Em C exitem 5 tipos de variáveis básicas: caracter, inteiro, ponto flutuante, ponto flutuante duplo e sem valor. As palavras reservadas usadas para declarar variáveis desses tipos são: char, int, float, double e void, respectivamente. Nos computadores da linha IBM-PC a tabela seguinte é válida: tipo bit bytes escala char 8 1-128 a 127 int 16 2-32768 a 32767 float 32 4 3.4E-38 a 3.4E+38 double 64 8 1.7E-308 a 1.7E+308 void 0 0 sem valor Modificadores de Tipos Com exceção do tipo void, os tipos básicos de dados podem ter vários modificadores precedendo-os. Um modificador é usado para alterar o significado do tipo base para adequálos melhor às necessidades das várias situações. Os modificadores são signed, unsigned, long, e short, a tabela abaixo mostra as combinações possíveis dos tipos básicos e modificadores do C. DCT/UFMS Prof. Marcos Alves 4

tipo bits escala char 8-128 a 127 unsigned char 8 0 a 255 signed char 8-128 a 127 int 16-32768 a 32767 unsigned int 16 0 a 65535 signed int 16-32768 a 32767 short int 16-32768 a 32767 unsigned short int 16 0 a 65535 signed short int 16-32768 a 32767 long int 32-2147483648 a 2147483647 signed long int 32-2147483648 a 2147483647 unsigned long int 32 0 a 4294967295 float 32 3.4E-38 a 3.4E+38 double 64 1.7E-308 a 1.7E+308 long double 80 3.4E-4932 a 1.1E+4932 Nomes de Variáveis A escolha de nomes significativos para suas variáveis pode ajudá-lo a entender o que o programa faz e prevenir erros. Você pode usar quantos caracteres quiser para um nome de variável com o primeiro sendo obrigatoriamente uma letra ou sublinhado (_) e os demais podendo ser letras, números ou outros sublinhados. Uma variável não pode ter o mesmo nome de uma palavra reservada do C e não deverá ter o mesmo nome de uma função. Em C maiúsculas e minúsculas são tratadas como diferentes e distintas umas das outras. Por isso, cont, Cont e CONT são três variáveis distintas. Declarações de Variáveis Uma declaração de variável é 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 da variável. Uma declaração de variável consiste em um tipo seguido do nome da variável. Exemplo: int num; Em C todas as variáveis devem ser declaradas. Se você tiver mais de uma variável do mesmo tipo, poderá declará-las de uma única vez, separando seus nomes por vírgulas. int num1, num2, num3; Inicialização de Variáveis É possível combinar uma declaração de variável com o operador de atribuição para que a variável tenha um valor no instante de sua declaração. A forma geral de inicialização é: tipo nome_da_variável = constante; Exemplos: int num = 2; char letra = a ; DCT/UFMS Prof. Marcos Alves 5

Vejamos um exemplo completo: int evento = 5; char corrida = C ; float tempo = 27.25; printf( O tempo vitorioso na eliminatória %c, corrida); printf( \nda competição %d foi %f., evento, tempo); Tamanho de Campos na Impressão Em printf() é possível estabelecer o tamanho mínimo para a impressão de um campo. printf( Os alunos sao %3d.\n, 350); printf( Os alunos sao %4d.\n, 350); printf( Os alunos sao %5d.\n, 350); Os alunos são 350. Os alunos são 350. Os alunos são 350. Podemos usar tamanho de campos com números em ponto flutuante para obter precisão e arredondamento. printf( %.4f\n, 3456.789); printf( %.3f\n, 3456.789); printf( %.2f\n, 3456.789); printf( %.1f\n, 3456.789); 3456.7890 3456.789 3456.79 3456.8 Os tamanhos de campos podem ser usados para alinhamento à direita. Exemplo: printf( %10.2f %10.2f %10.2f\n, 8.0, 15.3, 584.13); printf( %10.2f %10.2f %10.2f\n, 834.0, 1500.55, 4890.21); DCT/UFMS Prof. Marcos Alves 6

8.00 15.30 584.13 834.00 1500.55 4890.21 O sinal de menos (-) precedendo a especificação do tamanho do campo justifica os campos à esquerda. Exemplo: printf( %-10.2f %-10.2f %-10.2f\n, 8.0,15.3,584.13); printf( %-10.2f %-10.2f %-10.2f\n,834.0,1500.55,4890.21); 8.00 15.30 584.13 834.00 1500.55 4890.21 Além de especificar o tamanho do campo, podemos complementar o campo todo ou parte dele com zeros à esquerda. Exemplo: printf( %04d\n,21); printf( %06d\n,21); printf( %6.4d\n,21); printf( %6.2d\n,21); 0021 000021 0021 21 Imprimindo Caracteres Em C um caracter pode ser representado de diversas maneiras: o próprio caracter entre aspas simples ou sua representação decimal, hexadecimal ou octal segundo a tabela ASCII. A tabela ASCII tem 256 códigos decimais numerados de 0 a 255. Cada código decimal corresponde à um caracter distinto, por exemplo, o decimal 65 corresponde ao caracter A. O exemplo: printf( %d %c %x %o \n, A, A, A, A ); imprime: 65 A 41 101 DCT/UFMS Prof. Marcos Alves 7

O exemplo: printf( %c %c %c %c \n, A,65,0x41,0101); imprime: A A A A Um octal em C sempre é iniciado por 0 e um hexadecimal por 0x para que o compilador saiba diferenciá-los de números decimais. Comentários Comentários podem ser colocados em qualquer lugar de seu programa. Comentários começam com barra-asterisco (/*) e terminam por asterisco-barra (*/). O compilador irá ignorar tudo o que encontrar entre estes dois símbolos. Inserir comentários em seus programas é fundamental para que se tenha uma boa documentação. A documentação auxilia no entendimento do programa. Vejamos um exemplo anterior com os devidos comentarios: /* corrida.c */ /* Programa para imprimir o resultado de uma corrida*/ /* Biblioteca que contem a funcao printf() */ /* Funcao principal */ int evento = 5; /* declara a variavel evento e a inicializa */ char corrida = C ;/* declara a variavel corrida e a inicializa */ float tempo = 27.25; /* declara a variavel tempo e a inicializa */ /* Imprime o resultado da corrida */ printf( O tempo vitorioso na eliminatória %c, corrida); printf( \nda competição %d foi %f., evento, tempo); Asteriscos dentro de comentários podem ser colocados livremente: /***************************************************** * Programa: corrida.c * Programador: * Data: * Programa para imprimir o resultado de uma corrida ******************************************************/ Não são permitidos os símbolos /* ou */ no interior de um comentário: /* Estou escrevendo /* um comentário ilegal */ DCT/UFMS Prof. Marcos Alves 8