Cadastro com manipulação de arquivos
// Cadastro de lojas em Shopping
// Com manipulação de arquivos
#include <stdio.h>
typedef struct Shopping{ char nome[20]; int codigo, tipo; float area, condominio;
}tipo_shopping;
tipo_shopping shopping;
FILE *p_shopping;
void abre_arquivo(void){
p_shopping=fopen("shopping_center.bin", "w+b");
}
float condomino_2(int t_tipo, float t_area){
switch(t_tipo){ case 1: return t_area*50; break; case 2: return t_area*65; break; case 3: return t_area*80; break; case 4: return t_area*95; break; }
}
void mostrar(void){ int shopping_codigo, shopping_tipo; char shopping_nome; float shopping_area, shopping_condominio;
printf("\n%6d %-13s %4.2f %4d %10.2f", shopping_codigo, shopping_nome, shopping_area, shopping_tipo, shopping_condominio );
}
void procurar(int cod){ int shopping_codigo, shopping_tipo; char shopping_nome; float shopprig_area, shopping_condominio;
rewind(p_shopping); do{ fread(&shopping, sizeof(tipo_shopping), 1, p_shopping); if(cod==shopping_codigo) mostrar(); }while(feof(p_shopping)==0 && cod!=shopping_codigo); if(cod!=shopping_codigo) printf("\n\nLoja nao cadastrada!");
}
void cadastrar(struct Shopping *S){ FILE *p_shopping;
int shopping_codigo, shopping_tipo; char shopping_nome; float shopping_area, shopping_condominio;
int continuar; do{ system("cls"); printf("\t\tCadastro"); printf("\n\nShopping Center"); printf("\n\nCadastro de Loja"); printf("\n\nCodigo: "); scanf("%d", &shopping_codigo); printf("\n\nNome: "); scanf("%s", &shopping_nome); printf("\n\nArea: "); scanf("%f", &shopping_area); printf("\n\nTipo (1-confeccoes, 2-alimentacao, 3-livros, 4- servicos): "); scanf("%d", &shopping_tipo);
shopping_condominio = condomino_2(shopping_tipo, shopping_area);
fseek(p_shopping, 0, SEEK_END); fwrite(&shopping, sizeof(tipo_shopping), 1, p_shopping);
printf("\nCadastrado com