Professional Documents
Culture Documents
UNIX
dBase III, IV e Access
Excel
Efeitos Especiais em filmes como: Star Trek e Star War
BAIXO NIVEL
+
Assembly
Cobol
Basic
Pascal
ALTO NIVEL
+
Ada
Modula-2
Palavras Reservadas
Uma palavra reservada, em uma linguagem de programao, j possui um
significado definido na linguagem, no podendo ser utilizada para criao de
outros objetos, tais como variveis, constantes ou subprogramas, pois no
permitir a correta execuo da tarefa solicitada ao computador.
A Linguagem C possui 32 palavras reservadas, de acordo com o padro definido
pela American National Standards Institute (ANSI). Acompanhe a grafia correta
de cada uma delas na relao apresentada a seguir :
auto
break
case
char
const
continue
defaut
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
Comentrios
/* SNTESE
Objetivo: saudar o usurio
Entrada: nenhuma
Sada: mensagem de saudao
*/
#include <stdio.h>
// instruo da linguagem C
// instruo da linguagem C
// INSTRUES
printf(Ol usurio!!!);
// instruo da linguagem C
Incio de blocos
Assim como na elaborao do algoritmo, os programas em C tambm so
desenvolvidos por meio de alguns blocos lgicos principais (sntese, declaraes,
instrues), sendo todos eles destinados a uma organizao coerente na
codificao desejada. Respeitando esta organizao ser elaborado um cdigo
eficiente por um programador organizado que no tem dificuldades na
manipulao e manuteno dos seus programas.
SNTESE:
Este bloco representa um resumo lgico do que o programa dever fazer. A
confeco do mesmo identifica trs informaes relevantes que sintetizam as
atividades do programa, sendo elas: OBJETIVO (objetivo que este programa
atende); ENTRADA (as entradas de dados necessrias para atender este
objetivo); SADA (os dados de sada aps o processamento das entradas).
A construo da sntese deve ser cuidadosa, pois ela exatamente o algoritmo,
ou melhor, a sntese dele.
DECLARAES:
A criao dos recursos manipulados pelo programa ser efetuada neste bloco e
contribuir com a organizao no desenvolvimento do programa, pois facilitar
a compreenso no uso de cada recurso. Os recursos aqui citados consistem
das variveis, constantes e subprogramas.
INSTRUES:
Neste bloco so descritas as aes a serem realizadas por um programa que
busca atingir o objetivo almejado pelo programador que o elaborou. As
instrues ou comandos esto neste bloco.
Na construo dos algoritmos as palavras reservadas incio e fim representam
o comeo e o trmino deste bloco. Cada instruo tambm encerrada por
meio de uma pontuao especfica, sendo normalmente utilizado o ponto e
vrgula (;).
O desenvolvimento dos programas em C possuem as mesmas regras, porm a
grafia ou os smbolos so diferentes. O bloco iniciado pelo smbolo de
abertura de chaves ({) e encerrado pelo fechamento da mesma (}), enquanto
cada instruo terminada tambm pelo ponto e vrgula (;).
/* SNTESE
Objetivo: saudar o usurio
Entrada: nenhuma
Sada:
mensagem de saudao
*/
#include <stdio.h>
// instruo da linguagem C
void main (void)
{
// DECLARAES
// instruo da linguagem C
// INSTRUES
printf(Ol usurio!!!);
// instrues da linguagem C
printf(Seja bem vindo ao Curso de C);
}
Tipos de dados
Sintaxe em C
char
int
float
double
void
int VALOR;
long
short
signed
unsigned
Os modificadores no podem ser aplicados a qualquer tipo, por exemplo: em
float no se pode aplicar nenhum deles (no tem efeito algum), enquanto que o
int aceita qualquer um dos quatro.
A uso dos modificadores long e short contribuem com o aumento ou reduo do
espao de armazenamento do dado na memria. O unsigned permite a
manipulao dos valores sem sinal, ou seja, s os valores positivos.
No algoritmo a seguir, veja as instrues que criam uma constante inteira e duas
variveis (uma real e outra caracter).
Sntese
Objetivo: declarar uma constante e duas variveis
Entrada: nenhuma
Sada:
nenhuma
Declaraes
inteiro numero;
real money;
Incio
{ sem instrues }
Fim
/* SNTESE
Objetivo: declarar uma constante e duas variveis
Entrada: nenhuma
Sada:
nenhuma
*/
#include <stdio.h>
// instruo da linguagem C
void main (void)
// instruo da linguagem C
{
// DECLARAES
const int TUDO = 100; // declarao da constante inteira TUDO
char LETRA;
float SALARIO;
// INSTRUES
/* instrues a serem executadas pelo programa */
}
ESTRUTURA DE UM PROGRAMA
Um programa em C possui caractersticas que devem ser obedecidas, pois um
erro de sintaxe ou semntica resultam na falha de cumprimento do objetivo
almejado pelo programa.
Na continuao da aprendizagem sobre a programao estruturada, todos os
cdigos, ou programas, em C devero ser elaborados respeitando a estrutura de
desenvolvimento de programas em trs grandes blocos, sendo eles:
SNTESE;
DECLARAES;
INSTRUES.
Sntese
objetivo: exemplificar a estrutura padro de um programa escrito em C
entrada: nenhuma
sada: mensagem de sucesso no primeiro programa
Declaraes
Incio
escreva(Esse o meu primeiro programa!!);
Fim
/*SNTESE
processar as informaes
Instruo de Sada
# Funo printf()
Esta funo responsvel pela apresentao de dados no dispositivo padro de
sada da Linguagem C. Por se tratar de uma funo, esta instruo no uma
palavra reservada da linguagem, mas sua utilizao como nome de um outro
recurso no programa (varivel, constante, subprograma) pode dificultar a
compreenso e manipulao do mesmo. A representao da forma geral desta
funo mostrada a seguir:
Significado
Inteiro
Real (float)
Caractere
String
Octal
Hexadecimal
Real grande (double)
Mostra um %
Sntese
objetivo: ler e escrever dados
entrada: uma idade, um salrio e a letra inicial do sexo de uma pessoa
sada: a idade, o salrio e o sexo informado pelo usurio
Declarao
inteiro IDADE;
real SALARIO;
caractere SEXO;
Inicio
escreva(Informe a idade: );
leia(IDADE);
escreva(Informe o salrio: );
leia(SALARIO);
escreva(Informe M para masculino ou F para feminino: );
leia(SEXO);
escreva(Sua idade = , IDADE, e seu salrio = ,SALARIO);
escreva(A letra inicial do seu sexo = ,SEXO);
Fim
/*SNTESE
objetivo: ler e escrever dados
entrada: uma idade, um salrio e a letra inicial do sexo de uma pessoa
sada: a idade, o salrio e o sexo informado pelo usurio
*/
#include <stdio.h>
#include <conio.h>
void main(void)
{
// DECLARAES
int IDADE;
float SALARIO;
char SEXO;
// INSTRUES
printf("Informe a idade: ");
scanf("%d",&IDADE);
printf("Informe o salrio: ");
scanf("%f",&SALARIO);
# Funo getch()
Esta funo faz a leitura imediata de um caractere do teclado, no utilizando a
memria temporria (buffer) para armazena-lo. Ela permite ainda que o caractere
pressionado seja mostrado na tela. Veja no exemplo a seguir a leitura de um
caractere por meio desta funo, sendo ele armazenado na varivel LETRA.
void main ()
{
// DECLARAES
char LETRA;
// INSTRUES
LETRA = getche();
}
# Funo getch()
void main ()
{
// DECLARAES
char TECLA;
// INSTRUES
TECLA = getch();
}
# Funo getchar()
A leitura de um nico caractere tambm realizada por esta funo, mas ela usa
o buffer para efetuar esta leitura, sendo necessrio pressionar a tecla ENTER
aps digitar a tecla desejada. A tecla digita permanece na memria temporria
(buffer) at que o ENTER seja pressionado, o que solicitar ao computador a
copia dos dados do buffer para a memria principal, memria esta que o
computador utiliza para manipular os dados enquanto so processados. Observe
a sintaxe similar da getchar() com as outras funes que fazem a leitura de um
nico caractere.
void main ()
{
// DECLARAES
char TECLA;
// INSTRUES
TECLA = getchar(); /* retorna o valor lido na varivel TECLA
usando o buffer */
}
Operador em C
Significado da Operao
>
>
Maior do que
>=
>=
Maior ou igual a
<
<
Menor do que
<=
<=
Menor ou igual a
==
Igual a
<>
!=
Diferente de
Exemplo em Algoritmo
Sintaxe do exemplo em
C
VALOR == 0
MAX > 1
LETRA != 'A'
Operador Lgico em C
E
OU
NO
&&
||
!
Operador E Lgico em C
A
V
V
F
F
B
V
F
V
F
A && B
V
F
F
F
Operador OU Lgico em C
A
V
V
F
F
B
V
F
V
F
A || B
V
V
V
F
Operador NO
Lgico em C
A
V
F
!A
F
V
((5 > 5) || ((2 != 3) && (1 < 3))) => o resultado desta expresso Verdadeiro
sequencia alcanada por cada expresso, pois eles alteram a precedncia das
operaes (prioridades), por exemplo:
Operador de atribuio
O operador de atribuio utilizado para atribuir um valor a uma varivel ou
constante, somente na sua declarao, pois no decorrer do programa a constante
no recebe nenhum outro valor. Este operador sempre armazena o valor, ou o
resultado da expresso, que est a direita do smbolo de atribuio (um sinal
igual = ), armazenando este valor, ou resultado da expresso, na varivel que
est a sua esquerda.
Algoritmo
VALOR
Linguagem C
50;
VALOR = 50;
Operadores Aritmticos
SMBOLO DO OPERADOR
+
-
OPERAO
Adio
Subtrao
*
/
Multiplicao
Diviso
Mdulo (resto da diviso de
inteiros)
5/2 =2
enquanto que
5.0 / 2 = 2.5
Sntese
Objetivo: somar duas variveis
Entrada: nenhuma
Sada: resultado da soma
Declaraes
inteiro VALOR_1, VALOR_2, RESULTADO;
Inicio
VALOR_1
35;
VALOR_2
42;
RESULTADO
VALOR_1 + VALOR_2;
/*SNTESE
Objetivo: somar duas variveis
Entrada: nenhuma
Sada: resultado da soma
*/
void main ()
{
// DECLARAES
int VALOR_1, VALOR_2, RESULTADO; // declaraes das variveis
// INSTRUES
VALOR_1 = 35;
// atribuio de 35 a VALOR_1
VALOR_2 = 42;
// atribuio de 42 a VALOR_2
Incremento e decremento
Os operadores de incremento ou decremento podem ser escritos de uma forma
mais simplificada na Linguagem C.
CONTADOR
CONTADOR + 1;
equivale a
CONTADOR++;
Y = 0;
Pr-incremento (pr-fixado)
depois X atribudo a Y.
Ps-incremento (ps-fixado)
Y = X++; equivale a Y = X;
primeiro X atribudo a Y.
Pr-decremento
depois X atribudo a Y.
Ps-decremento
Y = X--; equivale a Y = X;
primeiro X atribudo a Y.
Expresso Convencional
Expresso Equivalente em C
X = X + Y;
X = X - Y;
X = X * Y;
X = X / Y;
X = X % Y;
X += Y;
X -=Y;
X *= Y;
X /= Y;
X %= Y;
/*SNTESE
Objetivo: somar duas variveis
Entrada: valor das variaveis
Sada: resultado da soma
*/
void main( )
{
// DECLARAES
int NUMERO_1, NUMERO_2;
// INSTRUES
printf (Informe o primeiro valor: );
scanf(%d,&NUMERO_1);
printf (\nInforme o segundo valor: );
scanf(%d,&NUMERO_2);