Вы находитесь на странице: 1из 49

Projeto e Desenvolvimento de Algoritmos

Linguagem C

Programando em C Funes Variveis Define Operadores e Expresses Entrada e Sada Exemplos

Indentao e comentrios so MUITO importantes para o entendimento do cdigo

As funes tm a seguinte estrutura:

Tipos bsicos na linguagem C:

Declarao de varivel:

variveis devem ser explicitamente declaradas variveis podem ser declaradas em conjunto

A diretiva #define associa um identificador a um valor. O padro C ANSI refere-se ao identificador como um nome de macro e ao processo de substituio como substituio de macro. Formato: #define nome_macro valor usual definir o nome das macros com letras maisculas Exemplos:

#define UM 1 #define MSG Digite S para sair

Expresso = combinao de variveis, constantes e operadores que, quando avaliados, resulta em um valor. Exemplo:

float cels = 10; float fahr = 1.8 * cels + 32;

Operadores aritmticos ( + , - , * , / , % ): operaes so feitas na preciso dos operandos

o operando com tipo de menor expressividade convertido para o tipo do operando com tipo de maior expressividade diviso entre inteiros trunca a parte fracionria

Operadores aritmticos (cont.):


o operador mdulo, %, aplica-se a inteiros precedncia dos operadores: * , / , - , +

Operadores de atribuio :
( = , += , -= , *= , /= , %= )

C trata uma atribuio como uma expresso

a ordem da direita para a esquerda

C oferece uma notao compacta para atribuies em que a mesma varivel aparece dos dois lados
var op= expr equivalente a var = var op (expr)

Operadores de incremento e decremento ( ++ , -- ): incrementa ou decrementa de uma unidade o valor de uma varivel
os operadores no se aplicam a expresses o incremento pode ser antes ou depois da varivel ser utilizada

n++ incrementa n de uma unidade, depois de ser usado ++n incrementa n de uma unidade, antes de ser usado

EXEMPLO: clculo do volume de uma esfera (4/3 * pi * r^3) como a linguagem C no tem o operador de exponenciao, ou se usa uma biblioteca externa (math.h) ou so feitas trs multiplicaes consecutivas.

Para evitar o uso de uma constante numrica para o PI pode-se definir uma CONSTANTE SIMBLICA.

Funo printf: possibilita a sada de valores segundo um determinado formato

Especificao de formato:

Especificao de tamanho de campo:

Impresso de texto:

Funo scanf:

captura valores fornecidos via teclado

Especificao de formato:

Funo scanf (cont.):


caracteres diferentes dos especificadores no formato servem para cercar a entrada espao em branco dentro do formato faz com que sejam "pulados eventuais brancos da entrada %d, %f, %e e %g automaticamente pulam os brancos que precederem os valores numricos a serem capturados

Tomada de Deciso Expresses Booleanas Blocos de Comandos Exemplos

Em C, a tomada de deciso construda atravs do comando if:

Podemos ter o if simples se apenas a expresso booleana retornar verdadeiro (true):

Em C, a tomada de deciso construda atravs do comando if:

Como tambm tratar se a expresso booleana retornar falso (false):

A sintaxe da linguagem C permite ainda que a simples codificao em seqncia de comandos ifelse resulte na construo de seleo exclusiva dentre mltiplas condies:

Uma expresso booleana uma expresso que, quando avaliada, resulta no valor falso ou verdadeiro. A linguagem C no tem um tipo de dado especfico para armazenar valores booleanos:

Em C, o valor booleano representado por um valor inteiro:


0

significa falso e qualquer outro valor diferente de zero significa verdadeiro. Em geral, usa-se 1 para representar o valor verdadeiro, e qualquer expresso booleana que resulta em verdadeiro resulta no valor 1.

Uma expresso booleana construda atravs da utilizao de operadores relacionais.


maior que (>), menor que (<), maior ou igual a (>=), menor ou igual a (<=), diferente de (!=), igual a (==).

Todos estes operadores comparam dois operandos, resultando no valor 0 (falso) ou 1 (verdadeiro).

Expresses booleanas tambm podem ser formadas com operadores lgicos.


negao (!), conjuno (&&) e disjuno (||).

Operadores lgicos combinam expresses ou valores booleanos, resultando num valor booleano (0 ou 1).

Na linguagem C, podemos agrupar comandos em blocos, envolvendo-os com abre e fecha chaves ({...}), como fizemos para delimitar o bloco de comando if e else nas construes para tomada de decises. Na verdade, podemos criar blocos de comandos em qualquer ponto do programa, bastando envolver comandos com chaves. Uma varivel declarada dentro de um bloco existe enquanto os comandos do bloco estiverem sendo executados. Quando o bloco chega ao fim, as variveis declaradas dentro dele deixam de existir.

Segundo o padro C89 da linguagem C, uma varivel s pode ser declarada no incio de um bloco de comandos (mudou no padro C99) Nas construes do comando if, os blocos so importantes para identificar o conjunto de comandos cuja execuo est submetida avaliao da expresso booleana. No entanto, se um bloco de comandos for constitudo por apenas um nico comando, as chaves podem ser omitidas.

Construo de Laos com while Algoritmos com Repetio Construo de Laos com for Repetio com Teste no Final

Em C, uma das formas de se trabalhar com repeties atravs do comando while.

Usando o comando for que equivalente ao comando while sendo que com uma sintaxe mais compacta. Sintaxe:

Exemplo: imprimir na tela os valores de 0 a 99:

Na prtica, uma das vantagens do comando for que escrevemos a expresso de atualizao logo no incio da construo. Com o comando while, muitas vezes o programadores acabam esquecendo de escrever a expresso de atualizao, criando um lao infinito. Exerccio: escrever o fatorial usando for:

while e for: avaliam a expresso booleana que controla a execuo do bloco de comandos no incio do lao. A linguagem C oferece uma terceira construo de laos atravs do comando do-while:

A expresso booleana avaliada no final do lao. Isso significa que o bloco de comandos avaliado pelo menos uma vez!

Exerccios
1)

Desenvolva um programa em C conforme solicitado abaixo: a) Imprimir a mensagem Al Mundo b) Converter uma temperatura de Celsius para Fahrenheit. F = C 1,8 + 32 c) Ler a nota de duas avaliao e calcular a mdia. Caso a mdia seja maior ou igual a 7 imprimir a mensagem aprovado. Caso seja menor imprimir a mensagem reprovado. d) Imprimir do nmero 1 ao 100

Вам также может понравиться