Você está na página 1de 9

Declaraes Globais

Directivas de Pr-Processamento
int main(void)
{
}
Definies Locais
Instrues
Declaraes das funes
Estrutura de um programa em linguagem C
1
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
#include <stdio.h>
#include <stdilib.h>
int main(void)
{
printf(Hello World\n);
return 0;
}
Exemplo de um programa em
linguagem C
Estrutura de um programa em
linguagem C
Estrutura Bsica de um programa em Linguagem C
2
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
Declaraes Globais
Directivas de Pr-Processamento
int main(void)
{
}
Definies Locais
Instrues
Declaraes das funes
Definio/Declarao de variveis globais
Definies de estruturas de forma global, ou seja,
vlida em todos os sub-blocos do programa
Definio/Declarao de variveis locais
Conjunto de instrues que iro constituir o programa
(Obs: uma instruo especifica a tarefa que o processador
ir executar)
Programa em linguagem C contm sempre a funo main
As funes so delimitadas por chavetas { }.
Na realidade as funes podem ser declaradas antes ou
depois da funo main
Nessas directivas contm funes, e ferramentas pr-definidas
e prontas a serem usadas.
Exemplo:Clculo da rea do circulo
3
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
Clculo da rea do crculo
Obter o raio do crculo
Se o raio for negativo, escrever raio invalido
Se no, calcular a rea do circulo usando
a expresso (A=.R
2
)
Terminar o Algoritmo.
Descrio Narrativa
Fluxograma Convencional
Programa Calculo_da_area_do_crculo
Area, Raio: Real
PI =3.14159
Inicio
Ler(Raio);
Se (Raio <0) ento
Escreve(Raio invalido);
Seno
Area PI * Raio * Raio;
Escrever(Area);
Fim Se
Fim
Soluo usando
Linguagem C
Pseudo-cdigo
inicio
Raio <0?
Ler(Raio)
Area . Raio. Raio
Fim
No Sim
Escrever(raio invlido)
Escrever(Area)
#i ncl ude <st di o. h>
#i ncl ude <st dl i b. h>
i nt mai n( ) {
i nt r ai o;
i nt Ar ea;
scanf ( %d, &r ai o) ;
i f ( r ai o < 0) {
pr i nt f ( r ai o i nvl i do) ;
}
el se{
Ar ea = 3. 14 * r ai o * r ai o;
pr i nt f ( %f , Ar ea) ;
}
exi t ( 0) ;
}
Calcula_Area.c
Exemplo:Clculo da Mdia do aluno
4
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
4
Descrio Narrativa
Fluxograma Convencional
Soluo usando
Linguagem C
Pseudo-cdigo
Clculo da mdia de um aluno
Obter as suas duas notas de prova
Calcular a mdia aritmtica
Se a mdia for maior que 9.5
O aluno aprovou
Seno, o aluno reprovou
inicio
Media >=9.5 ?
Ler(N1,N2)
Fim
N S
Aprovado
Media ( N1 +N2 ) / 2
Reprovado
Programa Calculo_da_media_de_um_aluno
N1, N2, MEDIA : Real;
Inicio
Ler (N1, N2);
MEDIA (N1+N2)/2;
Se (MEDIA >=9.5) ento
Escreva(Aprovado);
Seno
Escreva(Reprovado);
Fim Se
Fim
#i ncl ude <st di o. h>
#i ncl ude <st dl i b. h>
i nt mai n( ) {
i nt N1, N2;
f l oat Medi a;
scanf ( %d %d, &N1, &N2) ;
Medi a = ( N1+N2) / 2;

i f ( Medi a >= 9. 5) {
pr i nt f ( Apr ovou) ;
}
el se{
pr i nt f ( Repr ovou) ;
}
exi t ( 0) ;
}
Calcula_Media_do_Aluno.c
Prximos tpicos a serem estudados
5
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
#i ncl ude <st di o. h>
#i ncl ude <st dl i b. h>
i nt mai n( ) {
i nt r ai o;
i nt Ar ea;
scanf ( %d, &r ai o) ;
i f ( r ai o < 0) {
pr i nt f ( r ai o i nvl i do) ;
}
el se{
Ar ea = 3. 14 * r ai o * r ai o;
pr i nt f ( r ai o i nvl i do) ;
}
exi t ( 0) ;
}
Calcula_Area.c
Soluo usando Linguagem C
Nome do programa
Directivas (incluso de bibliotecas)
Declarao de variveis
Funo que permite a entrada de dados no programa
Estrutura de controlo de execuo das instrues
Atribuio de valores s variveis e utilizao de operadores (*)
Utilizao de funes presentes nas bibliotecas pr-definidas
Regras gerais usadas em linguagem C
Toda funo tem um corpo delimitado por { }.
Toda funo precedida de parnteses ().
Todo programa em linguagem C dever conter uma funo main.
As linhas de cdigos/instrues so sempre encerradas por
ponto-e-virgula (;).
Os comentrios so delimitados por /* */ ou ainda //
Exemplo: /* engenharia informtica */
ou //engenharia informtica
Estrutura de um programa
6
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
Estrutura de um programa
7
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
#include <stdio.h>
#include <stdilib.h>
int main(void)
{
printf(Hello World\n);
return 0;
}
st di o. h
st dl i b. h
#def i ne CONSTANTE 323
i nt at oi ( const char *s) ;
f l oat at of ( const char *s) ;

( . . . )
i nt pr i nt f ( char *f or mat , . . . ) ;
i nt scanf ( char *f or mat , . . . ) ;
i nt f get c( FI LE *f i l est r eam) ;
( . . . )
Essas directivas
so ficheiros que
contm algumas
funes pr-definidas
O programador
pode usar qualquer
uma das funes
existentes nesses
ficheiros
Principais bibliotecas do sistema Unix/Linux
Bibliotecas do Unix
8
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
Nome das bibliotecas Funo Tipo de funes no interior da biblioteca
stdio.h Standard input/output printf(); scanf(); fopen(); fclose(); fprintf();puts(); getchar();
stdlib.h Nconversion, storage,alocation atoi(); atof(); rand(); exit(); malloc(); abs(), etc.
string.h Manipulao de strings strcpy(); strcmp(); strlen();strcat() - concatenation,etc.
math.h Funes matemticas sin(); cos(); exp(); sqrt(); fabs(); log(); pow(); sinh(), etc.
time.h Manipulao de tempo/data clock(); time();
signal.h Mandar signals aos processos
limits.h Limites das constantes INT_MAX 32767, INT_MIN 32767, CHAR_BIT 8 bits
Estrutura de um programa
9
Universidade Metodista de Angola, Departamento de Engenharias, Programao I,
Gustavo Sebastio
Algumas funces em C Funcionalidade
printf(): print + format Imprime uma string ou um valor de uma varivel no ecr
scanf() scan +format : l dados do teclado e guarda-os numa varivel
fopen() Abre um ficheiro existente, se no existir cria o ficheiro
fclose() Fecha o ficheiro
fprintf() Imprime dados no ficheiro
puts(): put string Escreve uma cadeia de caracteres no ecr seguido de um carcter \n
getchar() L um carcter (no buffer, etc)
atoi(): ask to int Converte uma string em um nmero inteiro
atof(): ask to int Converte uma string em um nmero real
rand(): random Gera nmeros aleatrios
exit() Sair do Programa ou terminar o programa
malloc:memory allocation Alocao dinmica de memria
abs() Determina o valor absoluto de um nmero
strcpy(): string copy Copia os dados de uma string para outra
strcmp():string compare Compara duas strings
strlen(): string length Determina o tamanho da string
strcat(): string concatenation Efectua concatenao ou juno entre duas strings
sin(); Determina o valor de sin(x) para um dado x (x em radianos)
cos(); Determina o valor de cos(x) para um dado x (x em radianos)
exp(); Determina o valor de exp(x) para um dado x
sqrt(); Calcula a raiz quadrada de um dado nmero positivo
fabs(); Determina o valor absoluto de um nmero
log(); Determina o valor do logaritmo decimal de um dado valor x>0
pow(); Para efectuar operaes de potenciao
sinh() Determina o valor de um seno hiperblico dado o ngulo x [radianos]
clock() -
time() -

Você também pode gostar