Trabalho de programaçao c (estoque)
Por: Felipe Feliciano • 27/2/2016 • Trabalho acadêmico • 1.648 Palavras (7 Páginas) • 293 Visualizações
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define MAX_CARROS 50
// Estrutura definindo um novo tipo de dado (registro)
struct estoque{
int ano,codigo; // se -1 não existe estoque
char fabricante[50], modelo[50];
float valor;
};
// Array para armazenar 50 estoques
struct estoque cadCarro[MAX_CARROS];
// Funçao para limpar o array de estoques
// Atribui o valor -1 ao campo ano
void limpar(){
int i;
for (i = 0; i < MAX_CARROS; i++){
cadCarro[i].codigo = -1;
}
}
// Funçao para buscar um estoque de acordo com o seu numero
// Retorna -1 se não encontrou ou o indice onde foi encontrado
int buscar(int codigo){
int i;
for (i = 0; i < MAX_CARROS; i++){
if (cadCarro[i].codigo == codigo){
return i;
}
}
return -1;
}
// Funçao para inserir um estoque no cadastro
// Retorna 0 se não conseguir e 1 se inserir com sucesso
int inserir (struct estoque pront){
int i;
for (i = 0; i < MAX_CARROS; i++){
if(cadCarro[i].codigo == -1){
break;
}
}
if(i > MAX_CARROS) {
return 0;
} else {
cadCarro[i] = pront;
return 1;
}
}
// Funçao para inserir um estoque no cadastro
// Retorna 0 se não conseguir e 1 se inserir com sucesso
int remover (int codigo){
// Verifica se o estoque existe
int ret = buscar (codigo);
if(ret == -1){
return 0; // Nao encontrou registro a ser removido
} else {
// Encontro registro
cadCarro[ret].codigo = -1; // remove (indicado por -1)
return 1;
}
}
// Funçao para listar os estoque do cadastro
void listar (){
int i,ANO;
printf("digite o ano do veiculo: ");
scanf("%d",&ANO);
for (i = 0; i < MAX_CARROS; i++){
if((cadCarro[i].codigo != -1) && (cadCarro[i].ano==ANO)){
printf("\n\ncodigo do veiculo: %d",cadCarro[i].codigo);
printf("\n Nome do fabricante: %s", cadCarro[i].fabricante);
printf("\n Nome do modelo: %s", cadCarro[i].modelo);
printf("\n ano: %d", cadCarro[i].ano);
printf("\n valor: %.2f", cadCarro[i].valor);
}
}
}
// Funcao principal, onde se inicia a execucao da aplicacao
//
int main(){
// Variaveis locais
char opcao;
int controle=0, codigo;
// Cria uma variavel do novo tipo estoque
struct estoque pAux;
// Limpa todos os registros do cadastro
limpar();
// Cria menu e gerencia as opções
do {
// Limpa tela
system("cls");
// limpa buffer de teclado
fflush(stdin);
// Cria menu e espera opcao do usuario (pelo teclado)
...