AULA 6 - Introdução à Linguagem C - FIC
Ir para navegação
Ir para pesquisar
Estrutura de um programa em C
Normalmente, um programa em C tem o formato abaixo:
#diretivas de pré-processador
declarações de protótipos de função
declarações de variáveis globais
int main()
{
corpo da função main()
}
definição das demais funções
Ao longo de todo o código, podem e devem ser incluídos comentários. Comentários não são processados pelo compilador, portanto, não geram código.
Os comentários que utilizem várias linhas são identificados como iniciando-se pelos caracteres /* e terminando por */.
O programa abaixo serve para ilustrar esta estrutura:
/***************************************************************/
/*** PROGRAMA C que demonstra como usar várias primitivas gráficas ***/
/*** com monitor VGA ***/
/**************************************************************/
#include <graphics.h>
#include <stdio.h>
#include <stdlib.h>
#include <process.h>
#include <conio.h>
#define TRUE 1
#define MAX 200
#define NAO 'n'
#define SIM 's'
void circulo(int, int);
void barra(int);
void elipse(int, int) ;
void main(void)
{
int gdriver = DETECT, gmode, errorcode, i;
int midx, midy;
char ch;
initgraph(&gdriver, &gmode, " " );
errorcode = graphresult();
if (errorcode != grOk)
{ printf("Erro de Função Gráfica: %s \n", grapherrormsg (errorcode));
printf("Aperte uma tecla para parar: ");
getch();
exit(1);
}
setbkcolor(BLACK);
for(i = 10; ch != NAO; i +=100 )
{
circulo(i, i); // desenha um círculo vazio
barra(i + 50); // desenha uma barra cheia
elipse(i +200, i + 300); // desenha uma elipse cheia
printf("Deseja continuar? (s/n)");
ch = getchar();
}
closegraph();
}
void circulo(int x, int y)
/* desenha um pequeno círculo */
{ setcolor(BLUE);
circle(x, y,40);
}
void barra(int posicao)
/* desenha uma barra tridimensional */
{ setcolor(CYAN);
setfillstyle(LINE_FILL, CYAN);
bar3d(posicao, 20, posicao + 50, 90, 15, 1);
}
void elipse(int x, int y)
/* desenha uma elipse, traça e preenche */
{ setcolor(MAGENTA);
setfillstyle(SLASH_FILL, MAGENTA);
fillellipse(x, y, 40, 70);
}