Implemente uma lista com arranjos para armazenar a seguinte estrutura FICHA. Nesta implementação o algoritmo deve ser capaz de fazer as seguintes operações:
a) Inserir um registro da lita
b) alterar um registro da lista
c) excluir um registro da lista
d) imprimir a lista completa
English
Implement a list of arrangements to store the following structure SHEET. In this implementation the algorithm should be able to do the following operations:
a) Insert a record of lita
b) change a record from the list
c) delete a record from the list
d) print the full list
include
include
include
define limite 100
define inicio 0
typedef struct ficha{
int inscricao;
char nome[20];
int classe;
float horasnormais;
float horasextras;
};
typedef struct cadastro{
int primeiro;
int ultimo;
ficha dados[limite];
};
void inicialista(cadastro &cadastro){
cadastro.primeiro=inicio;
cadastro.ultimo=inicio;
}
main(){
cadastro lista;
ficha aux;
int opr=0,i,excluir,posicaoexcluir,posicaoaltera;
inicialista(lista);
while(opr<5){
system("CLS");
printf("=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=\n");
printf(" =.=.'Selecao de Operacoes'.=\n\n");
printf(" '1' = Incluir um Registro.\n");
printf(" '2' = Alterar um Registro.\n");
printf(" '3' = Excluir um Registro.\n");
printf(" '4' = Imprimir Lista de Produtos.\n");
printf(" '5' = Sair.\n");
printf("=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=\n\n=> ");
scanf("%d",&opr);
system("CLS");
switch(opr){
case 1:
if(lista.ultimo= lista.primeiro)&&(posicaoaltera < lista.ultimo)){
aux=lista.dados[posicaoaltera];
printf("=.= Posicao Para alteracao =.=\n\n");
printf("Incricao : %d\n",aux.inscricao);
printf("Nome : %s\n",aux.nome);
printf("Classe : %d\n",aux.classe);
printf("Horas Normais : %f\n",aux.horasnormais);
printf("Horas Extras : %f\n\n\n",aux.horasextras);
printf("Nova Inscricao = ");
scanf("%d",&aux.inscricao);
printf("\nNovo Nome = ");
scanf("%s",&aux.nome);
printf("\nNova Classe = ");
scanf("%d",&aux.classe);
printf("\nNovas Horas Normais = ");
scanf("%f",&aux.horasnormais);
printf("\nNovas Horas Extras = ");
scanf("%f",&aux.horasextras);
lista.dados[posicaoaltera]=aux;
}
else{
printf("Posicao Nao Existe");
getch();
}
break;
case 3:
printf("Digite a Posicao a Ser Excluida = ");
scanf("%d",&excluir);
for(i=excluir;i