Você está na página 1de 5

Ministrio da Educao

UNIVERSIDADE TECNOLGICA FEDERAL DO PARAN


Campus Pato Branco


Elementos da linguagem de programao C

Este documento tem por objetivo apresentar os elementos que permitem que um
programa escrito utilizando a linguagem de programao C funcione, isto , seja
executado com sucesso. Para ilustrar os conceitos da linguagem um problema
simples ser apresentado e os elementos deste descritos em detalhes logo aps a
criao do programa.

Problema: Dadas as duas notas de um aluno, calcule sua mdia aritmtica e
informe a sua situao (aprovado ou reprovado), levando em conta que a mdia
para a aprovao deve ser pelo menos 6,0.

O problema pode ser interpretado da seguinte forma: dever ser criado um
programa onde a pessoa possa informar (digitar) as duas notas de um aluno. Essas
notas podem ser digitadas uma aps a outra e armazenadas em variveis. Na
linguagem C possvel ler as duas notas de uma vez s. Depois que a pessoa
informar as duas notas, o programa ir calcular a mdia aritmtica delas (somar as
duas notas e dividir por 2 (dois)), exibir o resultado para a pessoa e ento o
programa ser finalizado.

Resumindo, os seguintes passos so necessrios para resolver o problema
apresentado:
1 passo: exiba uma mensagem para a pessoa solicitando a digitao das
notas.
2 passo: leia os dados digitados pelo usurio e os armazena nas variveis a
e b.
3 passo: calcule a mdia dos valores contidos nas variveis a e b e
armazene o resultado na varivel c.
4 passo: exiba uma mensagem indicando que a mdia o valor que est
guardado na varivel c.
5 passo: se o valor da varivel c for maior ou igual a 6.0, exiba a mensagem
Aprovado; seno, exiba a mensagem Reprovado.

Importante!
Note que todo dado manipulado pelo computador deve estar armazenado em
alguma posio de sua memria. Uma posio de memria contendo um dado que
pode ser alterado pelo algoritmo, denominada varivel, deve ser representada por
um nome iniciando com letra e composto exclusivamente por letras, dgitos e o
caractere underline _. Nomes de variveis devem ser escritos sem aspas.

A figura abaixo ilustra o algoritmo que resolve o problema apresentado
anteriormente utilizando o conceito de fluxograma.


Figura 1 - Fluxograma que descreve um algoritmo para resolver o problema da mdia

Embora um fluxograma seja uma descrio precisa e detalhada de um algoritmo, ele no
pode ser diretamente executado pelo computador. Assim, para vermos seu funcionamento
em um computador, precisamos antes transform-lo em um programa.

Um programa um algoritmo descrito em uma linguagem de programao, ou seja, em
uma linguagem que o computador seja capaz de interpretar e executar.

H diversas linguagens de programao que podem ser usadas para a codificao de um
algoritmo; por exemplo, podemos usar Pascal, C e Python, entre outras. Na disciplina de
Computao optamos por usar C devido ao fato de ser uma linguagem cujo conhecimento
facilita o aprendizado de diversas outras linguagens derivadas dela e que so bastante
requisitadas no mercado de trabalho, como, por exemplo, C++, Java e PHP.

Na listagem abaixo apresentado programa escrito em linguagem para solucionar o
problema discutido anteriormente. Na sequncia sero apresentados os elementos da
linguagem e a sua descrio. Toda a linha de cdigo ser explicada em detalhes tambm.


Figura 2 - Programa escrito em C pra calcular a mdia aritmtica das notas de um aluno

Em linguagem C:

Comentrios so ignorados pelo computador e servem apenas para introduzir lembretes
para o prprio programador. Em C, h dois tipos de comentrio: aqueles delimitados por
/* e */, que podem se estender por vrias linhas, e aqueles iniciados por //, que
terminam no final da linha. Comentrios so opcionais em um programa, porm seu uso
fortemente recomendado. No programa da figura 2 o comentrio aparece na linha 1
do cdigo.
Diretivas do tipo #include servem para incluir bibliotecas de comandos predefinidos da
linguagem. Particularmente, a incluso da biblioteca de entrada e sada padro stdio.h
(standard input/output header) necessria sempre que precisamos usar o comando de
entrada padro scanf(), que l dados digitados no teclado e os armazena em variveis, e
o comando de sada padro printf(), que exibe dados em vdeo. H diversas outras
bibliotecas em C que sero estudadas ao longo da disciplina. No programa da figura 2 a
diretiva #include aparece na linha 2 do cdigo.
A lgica do programa implementada por uma funo principal, denominada main(),
por onde se inicia a sua execuo. Os comandos da funo so delimitados por um par
de chaves. No programa da figura 2 a funo main() aparece na linha 4 do cdigo. O
delimitador inicial da funo { est na linha 5 e o final } na linha 21. Toda a lgica
do programa escrito dentro desta funo.
Variveis devem ser declaradas antes de serem usadas. A declarao de uma varivel
consiste na indicao do tipo de dados que ser armazenado por ela, bem como do
nome usado para identifica-la. Particularmente, a declarao float a, b, c; indica que o
Comentrios
Diretivas e bibliotecas
Funo principal
Declarao de variveis
Exibe algo no vdeo
Exibe algo no vdeo
Exibe algo no vdeo
Exibe algo no vdeo
Leitura de dados via teclado
Expresso aritmtica e atribuio de valores
Expresso lgica condicional
Comando return (0=sucesso)
programa usar trs variveis para armazenamento de nmeros reais. No programa da
figura 2 a declarao de variveis feita na linha 6 do cdigo.
A funo printf() usada para exibio de dados formatados no vdeo. Por exemplo, a
execuo de printf(Mdia = %.1f\n, c) faz com que o computador exiba a mensagem
Mdia = , seguida do valor da varivel c (%.1f indica um valor do tipo float com apenas
uma casa decimal) e, no final, mude o cursor para uma nova linha do vdeo (\n indica
new line). No programa da figura 2 a funo printf() utilizada nas linhas 8, 13, 16 e 18
do cdigo.
A funo scanf() usada para leitura de dados formatados do teclado. Por exemplo, a
execuo de scanf(%f %f, &a, &b) faz com que o computador leia dois valores do tipo
float e os armazene, respectivamente, nos endereos de memria onde foram criadas as
variveis a e b (&a indica o endereo de a). No programa da figura 2 a funo scanf()
utilizada na linha 9 do cdigo para ler as duas notas de um aluno.
Expresses aritmticas so compostas por constantes, variveis e operadores
aritmticos (+, -, * e /); o operador de atribuio (=) avalia a expresso sua direita e
armazena o resultado desta na varivel indicada sua esquerda. No programa da figura
2 uma expresso aritmtica junto com o operador de atribuio utilizada na linha 11
do cdigo para calcular a mdia das duas notas do aluno.
Expresses relacionais e lgicas so utilizadas para verificar se uma determinada
condio a ser executada pelo programa atendida. Elas podem ser verdadeiras ou
falsas. O comando if contm os comandos a serem executados se a expresso
condicional for verdadeira; o comando else possui as instrues a serem executadas pelo
programa caso o resultado da expresso na estrutura if seja falsa. Os operadores
relacionais da linguagem C so: >, <, ==, >=, <= e !=. Os operadores lgicos existentes so
&& (e), || (ou) e ! (no). No programa da figura 2 a estrutura if-else iniciada na linha
15 e terminada na linha 18.
A execuo da funo main() termina com a execuo do comando return. No programa
da figura 2 o comando return visto na linha 20.
Todas as palavras reservadas, com significado predefinido na linguagem, devem ser
escritas em letras minsculas (por exemplo, main, float, if, return).

Para testar o programa da figura 2 usando o compilador GNU GCC Compiler da ferramenta
Code::Blocks, proceda da seguinte forma:

1 passo: inicie a execuo do programa Code::Blocks.
2 passo: no menu deste programa, selecione a opo File -> New -> Empty file.
Voc tambm pode utilizar a tecla de atalho [Ctrl] + [Shift] + [N] para realizar esta
tarefa.
3 passo: salve o arquivo clicando na opo File -> Save file ou pressionando a
tecla de atalho [Ctrl] + [S]. Escolhe um nome para o arquivo e clique no boto
Save.
4 passo: digite o programa em linguagem C apresentado na figura 2. Salve o
programa novamente.
5 passo: no menu principal clique no boto Build and run para que o
programa seja compilado e executado. Voc pode usar a tecla de atalho F9
tambm para executar estas tarefas.
6 passo: fornea os dados de entrada e verifique se as respostas exibidas pelo
computador esto de acordo com o esperado.