Manipulação de um vetor de registros
Publicado por Krownix 15/11/2006
[ Hits: 17.579 ]
Script que demonstra a manipulação de um vetores de registros. Bem útil para ajuda na gravação e exclusão de dados em arquivos.
//Programa desenvolvido por Krownix 17.10.2006 #include <stdio.h> #include <stdlib.h> #define TAM 3 //tamanho do vetor Reg[] typedef struct Reg { int codigo; char nomeCidade[30]; char estado[5]; int numeroVeiculos; int numeroAcidentes; int status;//status do registro: 1==ATIVO, 0==INATIVO }; int last_pos=0; struct Reg r[TAM]; void GetInfo(void) { //Armazena dados no vetor Reg[] printf("Cidade:"); gets(r[last_pos].nomeCidade); printf("\n"); printf("Estado:"); gets(r[last_pos].estado); printf("\n"); printf("Codigo:"); scanf("\n%i", &r[last_pos].codigo); printf("NUmero Veiculos:"); scanf("\n%i", &r[last_pos].numeroVeiculos); fflush(stdin); //limpa entrada de dados printf("NUmero Acidentes:"); scanf("\n%i", &r[last_pos].numeroAcidentes); fflush(stdin); r[last_pos].status=1; last_pos++; }//fim GetInfo() //exibe informações no registro void ShowInfo(void) { for(register int i=0; i<=last_pos; i++) { if(r[i].status==1) { printf("Numero Registro.: %i\n", i); printf("Cidade..........: %s\n", r[i].nomeCidade); printf("Estado..........: %s\n", r[i].estado); printf("Codigo..........: %i\n", r[i].codigo); printf("Numero Veiculos.: %i", r[i].numeroVeiculos); printf("Numero Acidentes: %i", r[i].numeroAcidentes); printf("\n\nNumero de Registros.: %i", i); } } system("pause"); }//fim ShowInfo() //altera o status do regisro void DelInfo(int *n) { r[*n].status=0; ShowInfo(); }//fim DelInfo() int main(void) { int opcao, del; //Armazena dados no vetor Reg[] while(opcao!=0) { system("cls"); printf("1. Adicionar\n"); printf("2. Remover\n"); printf("3. Listar\n"); printf("Opcao.:\n"); scanf("%i", &opcao); fflush(stdin); switch(opcao) { case 1: system("cls"); GetInfo(); break; case 2: system("cls"); printf("Qual Registro quer excluir?: \n"); scanf("%i", &del); fflush(stdin); DelInfo(&del); break; case 3: system("cls"); ShowInfo(); break; default:printf("\n\nOpcao Invalida!"); exit(1); break; } } return 0; }
3º EP - Poli USP - Angry Birds (angry bixos)
AIMG-mostrar imagem fraquimentada em pontos aleatórios
Exemplo de sistema especialista usando Inteligência Artificial
Busca, inserção e remoção de elementos numa lista
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Zorin OS - Virtual Box não consigo abrir maquinas virtuais (5)
Iinstalar o Scanner Kodak i940 no Linux Mint 19/20? (3)
Pastas da raiz foram para a área de trabalho (4)