Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- #include<conio.h>
- #include<string.h>
- struct endereco{
- char rua[50];
- char numero[10];
- char complemento[80];
- char bairro[15];
- int CEP;
- char cidade[30];
- char estado[15];
- char pais[20];
- };
- struct telefone{
- int DDD;
- int numero;
- };
- struct data{
- char dia[2];
- char mes[2];
- char ano[4];
- };
- struct pessoa{
- char nome[50];
- char email[50];
- struct endereco enderecoPessoa;
- struct telefone telefonePessoa;
- struct data dataAniversario;
- char observacao[50];
- };
- void insertNoVetor(int index,struct pessoa aux ,struct pessoa agenda[100]){// Basicamente um insert
- struct pessoa temp=agenda[index];
- agenda[index]=aux;
- aux= temp;
- int i;
- for(i=index+1;i<100 && agenda[i-1].nome!='\0';i++){
- struct pessoa temp2=agenda[i];
- if(i==index+1){
- agenda[i]=aux;
- }
- else{
- agenda[i]=temp;
- }
- }
- }
- limpaAPartirDe(int index,struct pessoa agenda[100]){
- int i;
- for(i=index;i<100 && agenda[i+1].nome!='\0';i++){
- agenda[i]=agenda[i+1];
- }
- }
- void porNome(char nome[],struct pessoa agenda[100]){
- int i = 0;
- printf("Entrou");
- for(i=0;i<100;i++){
- printf("\n%s",nome);
- printf("\n%s",agenda[i].nome);
- if(strcmp(nome,agenda[i].nome)==0){
- printf("\nDeu");
- }
- }
- }
- void porMes(char mes[],struct pessoa agenda[100]){
- printf("Entrou");
- int i = 0;
- for(i=0;i<100;i++){
- if(strcmp(mes,agenda[i].dataAniversario.mes)==0){
- printf("\nDeu");
- }
- }
- }
- void porDiaEMes(char dia[], char mes[],struct pessoa agenda[100]){
- printf("Entrou");
- int i = 0;
- for(i=0;i<100;i++){
- if((strcmp(dia,agenda[i].dataAniversario.dia)==0) && (strcmp(mes,agenda[i].dataAniversario.mes)==0)){
- printf("\nDeu");
- }
- }
- }
- void insertPessoa(struct pessoa pessoa,struct pessoa agenda[100]){
- struct pessoa temp;
- int i =0;
- for(i=0;i<99;i++){
- if(agenda[i].nome=='\0'){
- //coloca
- }
- else if(strcmp(pessoa.nome,agenda[i].nome)<0){
- //acao
- //reordena a partir do ponto
- //a>b
- //reordena(temp,agenda);
- break;
- }//ir comparando ate ter null, se maior ele troca e reordena
- else if(strcmp(pessoa.nome,agenda[i].nome)==0){//se igual troca de lugar, o igual vai pra frente e reotdena
- temp=agenda[i];
- agenda[i]=pessoa;
- break;
- }
- //Se for maior n precisa fazer nada, so seguir, visto que o i e auto-incrementado
- }
- }
- /*void retiraPessoa(){
- int i;
- for(i=0;i<100;i++){
- if(true){//oq equals to index ai troca as retira
- //retira
- //reordena a partir dele
- } //chegou no index, remove, o +1 e colocado no lugar e por ai vai
- }//Utilizar de variavel para contar, e caso + ocorrencias perguntar qual index tirar, tirar ele dps reordenar
- limpaAPartirDe();//dps de coletar o index correto coloca ele aqui
- }
- void mostraParcialPessoa(){//nome telefone e email
- }
- */
- void mostrarInformacoesFull(struct pessoa pessoa){
- printf("Nome: %s",pessoa.nome);
- printf("Nome: %s",pessoa.email);
- printf("Nome: %s",pessoa.enderecoPessoa);
- printf("Nome: %s",pessoa.dataAniversario.ano);
- printf("Nome: %s",pessoa.observacao);
- }
- int main(){
- int escolha;
- do{
- printf("\n1 - Cadastrar pessoa");
- printf("\n2 - Retirar pessoa");
- printf("\n3 - Imprimir agenda");
- printf("\n4 - Buscar por dia dia e mês de aniversario");
- printf("\n5 - Buscar por mes de aniversario");
- printf("\n6 - Buscar por primeiro nome");
- printf("\n7 - Sair");
- scanf("%d",&escolha);
- }while(escolha < 1 || escolha > 7) ;
- switch (escolha){
- case 1:
- cadastroPessoa();
- }
- return 0;
- }
- struct pessoa cadastro[10];
- void cadastroPessoa(){
- //qual pósição do vetor tem que adicionar?
- printf("\nNome: ");
- fflush(stdin);
- fgets(cadastro[].nome, 40, stdin);
- printf("\nE-mail: ");
- flush(stdin);
- fgets(cadastro[].email, 40, stdin);
- printf("\nRua: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.rua, 40, stdin);
- printf("\nNumero: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.numero, 40, stdin);
- printf("\nComplemento : ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.complemento, 40, stdin);
- printf("\nBairro: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.bairro, 40, stdin);
- printf("\nCEP: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.CEP, 40, stdin);
- printf("\nCidade: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.cidade, 40, stdin);
- printf("\nPais: ");
- flush(stdin);
- fgets(cadastro[].enderecoPessoa.pais, 40, stdin);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement