Me ajudem com esse código para funcionar em DEV C

13/05/2007

0

// ========== Inclusao dos arquivos do cabecalho ===================
#include <stdio.h>
include <stdlib.h>
include <string.h>
include <conio.h>

define MAX 50

//declara‡Æo das variaveis globais
struct computadores
{
unsigned int cod; // codig do produto
char nome[25],fabricante[20];
float precounitario; // variaveis do tipo float para pre‡o
char sit[30],cor[15]; // situacao: novo; usado e sua cor
};
struct computadoresTabela[ MAX ]; /* cria um vetor de MAX 50 (´registros´) struct computadores, */


unsigned int NumRegs; // quantidade de computadores cadastrados na tabela, a cada momento


void Inicializa();
unsigned int RecebeMenu();
void incluimicro();
void apagamicro();
void exibemicro();

/* ------------------------ Funcao principal do programa ------------------------------ */
void main()
{

struct computadores comp;
unsigned int i, tmp;
char opcao;

clrscr();
textcolor(YELLOW);

Inicializa(); // inicio da tabela
for(;;) {
opcao = RecebeMenu();
switch( opcao ) {
case 1: inclumicro();
break;
case 2: apagamicro();
break;
case 3: exibemicro();
break;
case 4: clrscr();
textcolor(WHITE);
cprintf(´\n\n\n\n\nObrigado por visitar nosso Sistema\n\n\n\ntecle algo para sair!´);
getch();
clrscr();
exit(0);//termina o programa, retornando 0 como codigo de erro
}
}

}//fecha o main

//---- Inicializa a tabela de computadores ----
void Inicializa()
{
int t;
NumRegs = 0;
for( t=0; t<MAX; t++)
Tabela[t].cod = 0;
}//Inicio

// Exibe o menu para o usuario
unsigned int RecebeMenu()
{unsigned int c;

clrscr();
textcolor(CYAN + BLINK);
cprintf(´\n\n\n------------------- BEM VINDO A lOCADORA ESMMR MICRO COMPUTER -----------------\n\n´);
textcolor ( RED );
cprintf(´ \n\n\n---------------------------- CADASTRO DE COMPUTADORES --------------------------\n\n´);
printf(´\n\n\n=================================== MENU ===================================== \n\n´);
cprintf(´\n ( 1 )´); printf(´ Inclui novo computador. \n´);
cprintf(´\n ( 2 )´); printf(´ Apaga um item de computadores. \n´);
cprintf(´\n ( 3 )´); printf(´ Exibe os computadores cadastrados. \n´);
cprintf(´\n ( 4 )´); printf(´ Sair do programa. \n´);
do {


textcolor (BLUE); // cor para o texto
cprintf(´\n\n\n ì Entre com sua escolha: ´);
scanf(´¬u´, &c );
} while( c <= 0 || c > 4 );
return( c );
}//Recebe o Menu dos dados

//---------------------------------------------------
void incluimicro()
{ char ch;
struct computadores comp;
unsigned int i;//i indice da proxima posicao

i = 0;
do {
clrscr();
textcolor(LIGHTBLUE + BLINK); // texto luminoso e piscante
cprintf(´\n\n=========================== CADASTRO DE COMPUTADORES =============================´);
while ( Tabela[i].cod != 0 )
i++;
textcolor (RED);
cprintf(´\n\n\n------------------------- INFORME OS DADOS DOS COMPUTADORES: -----------------------\n´);
textcolor (LIGHTCYAN);
cprintf(´\nNumero de Ordem: ´);scanf(´¬u´, &comp.cod );
fflush( NULL );
cprintf(´\n\ncomputadores: ´); gets( comp.nome );
fflush( NULL );
cprintf(´\n\nFabricante: ´); gets( comp.fabricante );
fflush( NULL );
cprintf(´\n\nSituacao: ´);
textcolor(LIGHTBLUE); // texto luminoso
cprintf(´ NOVO OU USADO ?: ´); gets( comp.sit );
textcolor (LIGHTCYAN); //texto luminoso
fflush( NULL );
cprintf(´\n\nCor ?: ´); gets( comp.cor );
fflush( NULL );
cprintf(´\n\nPreco Unitario: ´);
scanf(´¬f´, &comp.precounitario );
Tabela[ i ] = comp ;
NumRegs++ ;
cprintf(´\n\n\n\nDeseja incluir um novo computador ? (S/N)?´);
ch = toupper(getch());
} while ( ch != ´N´);
clrscr();
}//Incluir Dados

void exibemicro()
{
unsigned int t;
clrscr();
textcolor(RED);
cprintf(´========================= COMPUTADORES CADASTRADOS NA TABELA =====================\n´ );
for(t=0; t < MAX; t++ ) {
if( Tabela[t].cod != 0 ) {
textcolor(YELLOW);
printf(´\n\n---------------------------------------------´);
printf(´\n\n Registro n?= ¬u ´, t+1 );
printf(´\n\n Numero de Ordem do computadores : ¬u´,Tabela[t].cod );
printf(´\n\n Nome do computadores: ¬s´, Tabela[t].nome );
printf(´\n\n Fabricante : ¬s´, Tabela[t].fabricante );
printf(´\n\n Situacao: ¬s´, Tabela[t].sit );
printf(´\n\n Cor: ¬s´,Tabela[t].cor );
printf(´\n\n Pre‡o Unitario: ¬f ´, Tabela[t].precounitario );
printf(´\n\n---------------------------------------------´);
}
}
cprintf(´\n\nTotal de computadores = ¬u´, NumRegs );//informa a quntidade total
printf(´\n\n*Pressione alguma tecla para retornar ao menu! ´);
getch();
clrscr(); //limpa
}//exibeDados

//-------------------------------------------------------------------------
void apagamicro()
{
unsigned int pos;

clrscr();
textcolor(YELLOW); //Cor do Cabe‡alho
cprintf(´****************************** EXCLUIR COMPUTADOR ****************************´);
printf(´\n\n\nInforme o Numero de Ordem do computador a ser excluido: ´);
scanf(´¬u´, &pos );
if( Tabela[pos-1].cod == 0 ) {
cprintf(´Este registro ja esta vazio´);
return;
}
Tabela[pos-1].cod = 0;
NumRegs--;
cprintf(´\n\n\nRegistro na entrada excluido!´ );
printf(´\n\n\n\n Numero atual de registros na tabela: ¬u\n´, NumRegs );// atualiza o registro
printf(´\n\n\n\n\nPressione alguma tecla para retornar ao menu! ´);
getch();


}//Fim do Programa.


Lacerda01

Lacerda01

Responder

Posts

14/09/2007

Zanchetta

Meu caro eu fiz algumas alterações como não conheço muito bem a sintaxe do c, pois programo em c++, verifiquei algumas coisas desconhecidas e coloquei em //(comentario) agora esta pelo menos executando...
qualquer coisa me mande um e-mail


thiagozanchetta@yahoo.it


aqui segue o código(ta meio bagunçado mexer no codigo dos outros é terrivel)


#include <stdio.h>
include <stdlib.h>
include <string.h>
include <conio.h>

define MAX 50
struct computadores
{
unsigned int cod; // codig do produto
char nome[25],fabricante[20];
float precounitario; // variaveis do tipo float para pre‡o
char sit[30],cor[15]; // situacao: novo; usado e sua cor
};
struct computadores Tabela[ MAX ]; /* cria um vetor de MAX 50 (´registros´) struct computadores, */
unsigned int NumRegs; // quantidade de computadores cadastrados na tabela, a cada momento

//---- Inicializa a tabela de computadores ----
void Inicializa()
{
int t, NumRegs ;
NumRegs = 0;
for( t=0; t<MAX; t++);
Tabela[t].cod = 0;
}//Inicio

// Exibe o menu para o usuario
unsigned int RecebeMenu()
{ unsigned int c;

//clrscr();
//textcolor(CYAN + BLINK);
printf(´\n\n\n------------------- BEM VINDO A lOCADORA ESMMR MICRO COMPUTER -----------------\n\n´);
//textcolor ( RED );
printf(´ \n\n\n---------------------------- CADASTRO DE COMPUTADORES --------------------------\n\n´);
printf(´\n\n\n=================================== MENU ===================================== \n\n´);
printf(´\n ( 1 )´); printf(´ Inclui novo computador. \n´);
printf(´\n ( 2 )´); printf(´ Apaga um item de computadores. \n´);
printf(´\n ( 3 )´); printf(´ Exibe os computadores cadastrados. \n´);
printf(´\n ( 4 )´); printf(´ Sair do programa. \n´);
do {


//textcolor (BLUE); // cor para o texto
printf(´\n\n\n ì Entre com sua escolha: ´);
scanf(´¬u´, &c );
} while( c <= 0 || c > 4 );
return( c );
}//Recebe o Menu dos dados

//---------------------------------------------------
void incluimicro()
{ char ch;
struct computadores comp;
unsigned int i; //i indice da proxima posicao

i = 0;
do {
//clrscr();
//textcolor(LIGHTBLUE + BLINK); // texto luminoso e piscante
printf(´\n\n=========================== CADASTRO DE COMPUTADORES =============================´);
while ( Tabela[i].cod != 0 )
i++;
//textcolor (RED);
printf(´\n\n\n------------------------- INFORME OS DADOS DOS COMPUTADORES: -----------------------\n´);
//textcolor (LIGHTCYAN);
printf(´\nNumero de Ordem: ´); scanf(´¬u´, &comp.cod );
fflush( NULL );
printf(´\n\ncomputadores: ´); gets( comp.nome );
fflush( NULL );
printf(´\n\nFabricante: ´); gets( comp.fabricante );
fflush( NULL );
printf(´\n\nSituacao: ´);
//textcolor(LIGHTBLUE); // texto luminoso
printf(´ NOVO OU USADO ?: ´); gets( comp.sit );
//textcolor (LIGHTCYAN); //texto luminoso
fflush( NULL );
printf(´\n\nCor ?: ´); gets( comp.cor );
fflush( NULL );
printf(´\n\nPreco Unitario: ´);
scanf(´¬f´, &comp.precounitario );
Tabela[ i ] = comp ;
NumRegs++ ;
printf(´\n\n\n\nDeseja incluir um novo computador ? (S/N)?´);
//ch = toupper(getch());
} while ( ch != ´N´);
//clrscr();
}//Incluir Dados

void exibemicro()
{
unsigned int t;
//clrscr();
//textcolor(RED);
printf(´========================= COMPUTADORES CADASTRADOS NA TABELA =====================\n´ );
for(t=0; t < MAX; t++ ) {
if( Tabela[t].cod != 0 ) {
//textcolor(YELLOW);
printf(´\n\n---------------------------------------------´);
printf(´\n\n Registro n?= ¬u ´, t+1 );
printf(´\n\n Numero de Ordem do computadores : ¬u´,Tabela[t].cod );
printf(´\n\n Nome do computadores: ¬s´, Tabela[t].nome );
printf(´\n\n Fabricante : ¬s´, Tabela[t].fabricante );
printf(´\n\n Situacao: ¬s´, Tabela[t].sit );
printf(´\n\n Cor: ¬s´,Tabela[t].cor );
printf(´\n\n Pre‡o Unitario: ¬f ´, Tabela[t].precounitario );
printf(´\n\n---------------------------------------------´);
}
}
printf(´\n\nTotal de computadores = ¬u´, NumRegs );//informa a quntidade total
printf(´\n\n*Pressione alguma tecla para retornar ao menu! ´);
getch();
//clrscr(); //limpa
}//exibeDados

//-------------------------------------------------------------------------
void apagamicro()
{
unsigned int pos;

//clrscr();
//textcolor(YELLOW); //Cor do Cabe‡alho
printf(´****************************** EXCLUIR COMPUTADOR ****************************´);
printf(´\n\n\nInforme o Numero de Ordem do computador a ser excluido: ´);
scanf(´¬u´, &pos );
if( Tabela[pos-1].cod == 0 ) {
printf(´Este registro ja esta vazio´);
return;
}
Tabela[pos-1].cod = 0;
NumRegs--;
printf(´\n\n\nRegistro na entrada excluido!´ );
printf(´\n\n\n\n Numero atual de registros na tabela: ¬u\n´, NumRegs );// atualiza o registro
printf(´\n\n\n\n\nPressione alguma tecla para retornar ao menu! ´);
getch();


}//Fim do Programa.


//declara‡Æo das variaveis globais




void Inicializa();
unsigned int RecebeMenu();
void incluimicro();
void apagamicro();
void exibemicro();

/* ------------------------ Funcao principal do programa ------------------------------ */
int main()
{

struct computadores comp;
unsigned int i, tmp;
char opcao;

//clrscr();
//textcolor(YELLOW);

Inicializa(); // inicio da tabela
opcao = RecebeMenu();
switch( opcao ) {
case 1: incluimicro();
break;
case 2: apagamicro();
break;
case 3: exibemicro();
break;
case 4: //clrscr();
//textcolor(WHITE);
printf(´\n\n\n\n\nObrigado por visitar nosso Sistema\n\n\n\ntecle algo para sair!´);
getch();
//clrscr();
exit(0); //termina o programa, retornando 0 como codigo de erro
}
}

//fecha o main


Responder

14/09/2007

Zanchetta

outro detalhe o seu fflush esta com problemas....quase mudei tudo para c++ mas não sabia o seu conhecimento nesta linguaguem!!!


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar