Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*Uma empresa de call center atende chamados de suporte para diferentes empresas, a fim de
- controlar cada uma das chamadas ela armazena algumas informações das chamadas em um arquivo com o nome
- “Chamadas.reg” (contendo a estrutura abaixo). Considere que o arquivo existe.
- Escreva um programa em Pascal que alimente este arquivo de cadastro, armazene as informações do cliente e salve as
- informações adicionadas no HD. O programa deve conter:
- a) Um procedimento que permita realizar o cadastro de um novo cliente e salvar suas informações no arquivo;
- b) Um procedimento que permita imprimir na tela as informação dos clientes baseado em uma determinada
- data de solicitação (que será passado como parâmetro);
- c) O programa deve permitir que os procedimentos sejam chamados de forma repetitiva no programa principal
- a partir de um menu (1 – Cadastrar novo cliente; 2 – Imprimir informações; 3 - Sair) ao qual o usuário pode
- escolher a ação desejada (correspondente as opções a e b acima); Caso a opção b seja escolhida, deve ser
- solicitado do usuário a data desejada para pesquisa e impressão dos dados dos clientes na tela.
- Obs.: Não utilizar variáveis globais na passagem de parâmetros entre o programa principal e os procedimentos.*/
- #include <stdio.h>
- #include <conio.h>
- #include <string.h>
- #include <stdlib.h>
- typedef struct {
- char nome[20], cpf[11], empresa[40], data[10];
- int fone, protocolo;
- }Registro;
- void Cadastro(FILE *clientet)
- {
- Registro cliente;
- fseek (clientet, 0, SEEK_END);
- printf ("\n Nome: ");
- fflush (stdin);
- gets (cliente.nome);
- printf ("\n CPF: ");
- scanf ("%s", &cliente.cpf);
- printf ("\n Empresa:");
- fflush (stdin);
- gets (cliente.empresa);
- printf (" \n Data de Solicitação:");
- fflush(stdin);
- gets (cliente.data);
- printf ("\n Fone:");
- scanf ("%d", &cliente.fone);
- printf ("\n Protocolo:");
- scanf ("%d", &cliente.protocolo);
- fwrite (&cliente, sizeof(Registro),1, clientet);
- }
- void Busca (char data[], FILE *cliente)
- {
- Registro clienteP;
- int i=0;
- rewind (cliente);
- fread(&clienteP, sizeof(Registro), 1, cliente);
- if (strcmp(clienteP.data, data)==0)
- { printf ("Contato Encontrado ");
- printf (" \n Nome: %s \n Data de Solicitacao: %s \n CPF: %s \n Empresa: %s \n Telefone: %d \n Protocolo: %d", clienteP.nome, clienteP.data, clienteP.cpf, clienteP.empresa, clienteP.fone, clienteP.protocolo);
- i=1;
- }
- if (i==0)
- printf ("Dado NAO ENCONTRADO!!!");
- }
- main ()
- {FILE *cliente;
- int op;
- char data[30];
- cliente = fopen ("Chamadas.reg", "ab");
- if (cliente==0)
- printf ("PRoblemas ao abrir o arquivo!");
- else {
- while (op!=3)
- {
- printf ("\n \a \t MENU");
- printf ("\n 1 Cadastrar novo cliente;\n 2 Imprimir informacoes; \n 3 Sair \n ");
- scanf ("%d", &op);
- switch (op)
- {
- case 1:
- Cadastro(cliente);
- break;
- case 2:
- printf ("\n Digite a data de Solicitacao: ");
- fflush (stdin);
- gets(data);
- Busca (data, cliente);
- break;
- }
- }
- }
- fclose(cliente);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement