Buscar

AGENDA EM LINGUAGEM C

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include<conio.h>
//#include"AGENDA.h"
//#include "estruturas-.h"
//ESTRUTURAS PARA A AGENDA
//===============================================================
//E-MAIL
struct email{
 char END_MAIL[64];
 
 };
//===============================================================
//ENDEREÇO
struct endereco{
 char nome_end[64];
 int num_end;
 char complemento[32];
 char bairro[32];
 char cidade[32];
 char estado[2];
 };
//===============================================================
//REGISTRAR OS CONTATOS E OS LEMBRETES
struct contatos{
 int codigo;
 char nome[32];
 char sobrenome[32];
 char aniversario[10];
 endereco residencial[64];
 endereco comercial[64] ;
 email E_MAIL1[64];
 email E_MAIL2[64];
 email E_MAIL3[64];
};
//CALENDARIO
struct data{
 int ano; 
 int mes; 
 int dia;
};
 //PROGRAMA PRINCIPAL
 main() {
 int i=0;
 
 struct TCNTT codi, NM[32], SBNM[32], ANIV[10],RESI[64], COM[64];
 struct TEML EML[3];
 struct TDT ANIV;
 
 FILE *fd;
 int menu,tamanho_do_nomepess,tamanho_do_sobpess,tamanho_do_email[3],tamanho_do_endereco,tamanho_do_aniversario,tamanho_do_telefone,tamanho_do_lembrete,tamanho_da_data;
 char ,,aniversario[10],telefone[10],[50],lembrete[150],data[10];
 while (menu!=0) {
 printf("\n\t* * * * * * * * * * * * * * **");
 printf("\n\t* AGENDA *");
 printf("\n\t* * * * * * * * * * * * * * **");
 printf("\n\t* MENU *");
 printf("\n\t* * * * * * * * * * * * * * **");
 printf("\n\t* (1)\tRegistrar Contato *");
 printf("\n\t* (2)\tProcurar Contato *");
 printf("\n\t* (3)\tListar Tudo *");
 printf("\n\t* (4)\tListar Contato *");
 printf("\n\t* (5)\tApagar Tudo *");
 printf("\n\t* (6)\tApagar Contato *");
 printf("\n\t* * * * * * * * * * * * * * *");
 printf("\n\t* (0)\tSair *");
 printf("\n\t* * * * * * * * * * * * * * **");
 printf("\nMenu ");
 
 scanf("%d",&menu);
 
 switch (menu) {
 case 1: {
 printf("QUANTAS PESSOAS VOCE QUER REGISTRAS");
 scanf("%d",&QNT);
 do{
 printf("\n\tCodigo:");
 scanf("%d",&codi.codpess);
 printf("\n\tEntre com o Nome: ");
 scanf("%s",&NM[i].nomepess);
 tamanho_do_nome=strlen(NM[i].nomepess);
 printf("\n\tEntre com o Sobrenome: ");
 scanf("%s",&SBNM[i].sobnpess);
 tamanho_do_sobnpess=strlen(SBNM[i].sobnpess);
 
 for (i=0;i<3;i++){
 printf("\n\tEntre com o e-mail: ");
 scanf("%s",&EML[i].E_MAIL[i].endemail);
 tamanho_do_email[i]=strlen(EML[i].E_MAIL[i].endemail);
 }
	 printf("\n\tEntre com o endereco: ");
	 scanf("%s",&endereco);
	 tamanho_do_endereco=strlen(endereco);
	 printf("\nRESIDENCIAL");
 printf("\nRUA: ");
 scanf("%s",&RESI[i].residencial.descend);
 printf("\nNUMERO:", RESI[i].residencial.numend);
 scanf("%d",&RESI[i].residencial.numend);
 printf("\nCOMPLEMENTO: ");
 scanf("%s",&RESI[i].residencial.compend);
 printf("\nBAIRRO: ");
 scanf("%s",&RESI[i].residencial.bairroend);
 printf("\nCIDADE: ");
 scanf("%s",&RESI[i].residencial.cidend);
 printf("\nUF: ");
 scanf("%s",&RESI[i].residencial.uf);
 
 printf(fd, "\nCOMERCIAL");
 printf("\nRUA: ");
 scanf("%s",&COM[i].comercial.descend);
 printf("\nNUMERO:", COM[i].comercial.numend);
 scanf("%d",&COM[i].comercial.numend);
 printf("\nCOMPLEMENTO: ");
 scanf("%s",&COM[i].comercial.compend);
 printf("\nBAIRRO: ");
 scanf("%s",&COM[i].comercial.bairroend);
 printf("\nCIDADE: ");
 scanf("%s",&COM[i].comercial.cidend);
 printf("\nUF: ");
 scanf("%s",&COM[i].comercial.uf);
 printf("\n\tEntre com a data de aniversario\n\t");
	 printf( "\n\tDIA: "
	 scanf("%%d",ANIV.aniversario.dia);
 printf("\tMES: ");
 scanf("%d",ANIV.aniversario.mes);
 printf("\tANO: ");
 scanf("%d",ANIV.aniversario.ano);
	 
 
 tamanho_do_aniversario=strlen(aniversario);
 registra(nome,telefone,E_MAIL,endereco,aniversario);
 
	 
	 i++;
	 }while (i<=QNT); 
 } break;
 case 2: {
 printf("\n\tEntre com o Nome: ");
	 scanf("%s",&nome);
	 tamanho_do_nome=strlen(nome);
	 if (tamanho_do_nome>30) {
	 printf("O tamanho do nome passa de 30 letras.\n");
	 
	 }
	 else {
	 pesquisa(nome);
	 }
 } break;
 case 3: {
	 listar();
	 
 } break;
 case 4: {
 listalimp();
	 
 } break;
 case 5: {
 printf("\n\tAgenda criada por Grace Kelly\n\n");
	 
 } break;
 case 6: {
 printf("\n\tAdionar data do Lembrete.\n");
 scanf("%s",&data);
 tamanho_da_data=strlen(data);
 printf("\n\tAdionar Lembrete.\n");
 scanf("%s",&lembrete);
 tamanho_do_lembrete=strlen(lembrete);
 eventos(data,lembrete);
	 
 }break;
 case 7: 
	 listar_evento();
	 
 	
 break;
 case 8: 
	 CALENDARIO();
	 
 break;
 case 0: break;
 default: {
 printf("\n\tOpcao invalida.\n");
	 
 }
 }
 }
 
 return(0);
}
//FUNÇÕES
//REGISTRA DADOS
void registra(){
 struct TCNTT codi, NM[32], SBNM[32], ANIV[10],RESI[64], COM[64];
 struct TEML EML[3];
 struct TDT ANIV;
 
 FILE *fd;
 fd=fopen("nome_agenda","a");
 while ((fscanf(fd,"%d", codi))!=EOF){
 
 fprintf(fd, "%d\n", codi.codpess);
 fprintf(fd, "%s\n", NM[i].nomepess);
 fprintf(fd, "%s\n", SBNM[i].sobnpess);
 fprintf(fd, "%s\n", EML[i].E_MAIL[i].endemail);
 
 fprintf(fd, "\nRESIDENCIAL");
 fprintf(fd, "%s\n", RESI[i].residencial.descend);
 fprintf(fd, "%s\n", RESI[i].residencial.numend);
 fprintf(fd, "%s\n", RESI[i].residencial.compend);
 fprintf(fd, "%s\n", RESI[i].residencial.bairroend);
 fprintf(fd, "%s\n", RESI[i].residencial.cidend);
fprintf(fd, "%s\n", RESI[i].residencial.uf);
 
 fprintf(fd, "\nCOMERCIAL");
 fprintf(fd, "%s\n", COM[i].comercial.descend);
 fprintf(fd, "%s\n", COM[i].comercial.numend);
 fprintf(fd, "%s\n", COM[i].comercial.compend);
 fprintf(fd, "%s\n", COM[i].comercial.bairroend);
 fprintf(fd, "%s\n", COM[i].comercial.cidend);
 fprintf(fd, "%s\n", COM[i].comercial.uf);
 
 fprintf(fd, "\nANIVERSARIO");
 fprintf(fd, "%d\n",ANIV.aniversario.dia);
 fprintf(fd, "%d\n",ANIV.aniversario.mes);
 fprintf(fd, "%d\n",ANIV.aniversario.ano);
 printf("\n\tDados registrados!\n"); 
 
 }
 
 
 }
 
 
 fclose(fd);
 getchar();
}
//FUNÇAO CODIGO
void cod(){
 
 FILE *fd;
 fd=fopen("nome_agenda","w");
 printf ("CODIGO: ");
 scanf("%d",&codi);
 
//=====================================================
//LIMPA A AGENDA
void listalimp() {
 FILE *fd;
 fd=fopen("nome_agenda","w+");
 printf("\n\tAGENDA APAGADA!\n");
 fclose(fd);
 getchar();
}
//======================================================
//PESQUISA CONTATOS
void pesquisa(char pesq[])
{
 FILE *fd;
 char curs[30],E_MAIL[30],telefone[10],endereco[50],aniversario[10];
 int existe=0;
 fd=fopen("nome_agenda","r");
 while ((fscanf(fd,"%s", curs))!=EOF)
 if (!strcmp(curs, pesq)) {
 printf("\n\tNome: %s", curs);
 fscanf(fd,"\n%s", &telefone);
 printf("\n\tTelefone: %s\n", telefone);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &E_MAIL);
 printf("\n\tE-mail: %s\n", E_MAIL);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &endereco);
 printf("\n\tEndereco: %s\n", endereco);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &aniversario);
 printf("\n\tAniversario: %s\n", aniversario);
 fscanf(fd,"\n");
 existe=1;
 }
 else fscanf(fd,"\n\n");
 if (existe==0) printf("Cadastro inexistente!\n");
 getchar();
 fclose(fd);
}
//======================================================
//LISTA CONTATOS
void listar() {
 FILE *fd;
 char curs[30],endereco[50],aniversario[10],E_MAIL[10],telefone[10];
 int i=0;
 fd=fopen("nome_agenda","r");
 while ((fscanf(fd,"%s", curs))!=EOF) {
 printf("\n\tNome: %s",curs);
 fscanf(fd,"\n%s", &telefone);
 printf("\n\tTelefone: %s\n", telefone);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &E_MAIL);
 printf("\n\tE-mail: %s\n", E_MAIL);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &endereco);
 printf("\n\tEndereco: %s\n", endereco);
 fscanf(fd,"\n");
 fscanf(fd,"\n%s", &aniversario);
 printf("\n\tAniversario: %s\n", aniversario);
 fscanf(fd,"\n\n");
 i++;
 }
 printf("\n\n\t\tTotal de registros: %d",i);
}
//===============================================================
//EVENTOS
void eventos(char data[10],char lembrete[150]) {
 FILE *fd;
 fd=fopen("nome_agenda","a");
 fprintf(fd, "%s\n", data);
 fprintf(fd, "%s\n", lembrete);
 printf("\n\tLembrete registrados!\n");
 fclose(fd);
}
//===============================================================
//LISTAR EVENTOS
void listar_evento(){
 FILE *fd;
 char data[10],lembrete[150];
 int i=0;
 fd=fopen("nome_agenda","r");
 fscanf(fd,"\n%s", &data);
 printf("\n\tData: %s",data);
 fscanf(fd,"\n%s", &lembrete);
 printf("\n\tLembrete: %s\n", lembrete);
 fscanf(fd,"\n");
 i++;
 
 printf("\n\n\t\tTotal de registros: %d",i);
}
//======================================================
 //CALENDARIO
 CALENDARIO(){
	int ano, mes, i, dias_mes, anobi, diasecular;
	int termo1, termo2, termo3, termo4, termo5, termo6, termo7, resto;
 printf("Calendario\n\n");
 printf("Entre com o ano (1901-2099):");
 scanf("%d", &ano);
 if(ano>=1901 && ano<2099){
		 }else{
		 printf("\nO ano tem que ser entre 1901 e 2099\n\n");
		 system("PAUSE");
		 return EXIT_SUCCESS;}
 printf("Entre com o mes (1-12):");
 scanf("%d", &mes);
			if(mes <=12 && mes >= 1){
 if(mes==2 && ano%4==0 && ano%100!=0 || mes==2 && ano%400==0){
	 anobi = 1;
 }else{ anobi = 0;}
 if (mes == 2 && anobi== 1){
		 dias_mes = 29;}
 else if (mes == 2 && anobi== 0){
	 dias_mes = 28;}
 else if (mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 10
		 || mes == 12){
	 dias_mes = 31;}
 else if(mes == 4 || mes == 6 || mes == 9 || mes == 11){
 dias_mes = 30;}
//COLOCA OS DIAS DO MES NA ORDEM CORRETA
 termo1 = (ano - 1901)*365;
 termo2 = (ano - 1901)/4;
 termo3 = (mes - 1) *31;
 termo4 = (mes * 4 + 23)/10;
 termo5 = (mes + 12)/ 15;
 termo6 = (4 - ano % 4) / 4;
 termo7 = (mes + 12)/ 15;
 diasecular = termo1 + termo2 + 1 + termo3 - termo4 * termo5 + termo6 * termo7;
 resto = diasecular % 7;
// printf("%d Dia-do-Seculo(%d)\n\n", diasecular, resto);
 switch(resto){
			case 0:
			printf("\nD S T Q Q S S\n");
			printf(" 1 ");
			for (i=2;i<7;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=7;i<10;i++){
				printf("%d ", i);}
			 for (i=10;i<14;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=14;i<21;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=21;i<28;i++){
				 printf("%d ", i);}
				 printf("\n");
				 if (dias_mes == 28){
				 printf("28\n");}
				 if (dias_mes >=29){
				 for (i=28;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");}
			break;
			case 1:
				 printf("\nD S T Q Q S S\n");
				 printf("	 1 ");
			for (i=2;i<6;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=6;i<10;i++){
				printf("%d ", i);}
			 for (i=10;i<13;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=13;i<20;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=20;i<27;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=27;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");
			break;
			case 2:
				 printf("\nD S T Q Q S S\n");
				 printf("		 1 ");
			for (i=2;i<5;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=5;i<10;i++){
				printf("%d ", i);}
			 for (i=10;i<12;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=12;i<19;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=19;i<26;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=26;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");
			break;
			case 3:
				 printf("\nD S T Q Q S S\n");
				 printf("			 1 ");
			for (i=2;i<4;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=4;i<9;i++){
				printf("%d ", i);}
			 for (i=9;i<11;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=11;i<18;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=18;i<25;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=25;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");
			break;
			case 4:
				 printf("\nD S T Q Q S S\n");
				 printf("			 1 ");
			for (i=2;i<3;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=3;i<10;i++){
				printf("%d ", i);}
				printf("\n");
			 for (i=10;i<17;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=17;i<24;i++){
				 printf("%d ", i);}
				 printf("\n");
				 if (dias_mes == 30 || dias_mes == 29||dias_mes == 28 ){
				 for (i=24;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");
				 }else{
				 for (i=24;i<=30;i++){
				 printf("%d ", i);}
				 printf("\n");
				 printf("31\n");}
			break;
			 case 5:
				 printf("\nD S T Q Q S S\n");
				 printf(" 1\n");
for (i=2;i<9;i++){
			printf("%d ", i);}
			printf("\n");
			printf("9 ");
			for (i=10;i<16;i++){
				printf("%d ", i);}
				printf("\n");
			 for (i=16;i<23;i++){
				printf("%d ", i);}
				printf("\n");
				 if (dias_mes == 28 || dias_mes == 29){
				 for (i=23;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");}
				 else if (dias_mes == 30){
				 for (i=23;i<=30;i++){
				 printf("%d ", i);}
				 printf("\n");
				 printf("30\n");}
				 else if (dias_mes == 31){
				 for (i=23;i<30;i++){
				 printf("%d ", i);}
				 printf("\n");
				 printf("30 ");
				 printf("31\n");
				 }
			break;
			 case 6:
				 printf("\nD S T Q Q S S\n");
				 printf("1 ");
			for (i=2;i<8;i++){
			printf("%d ", i);}
			printf("\n");
			for (i=8;i<10;i++){
				printf("%d ", i);}
				for (i=10;i<15;i++){
				printf("%d ", i);}
				printf("\n");
			 for (i=15;i<22;i++){
				printf("%d ", i);}
				printf("\n");
				for (i=22;i<29;i++){
				 printf("%d ", i);}
				 printf("\n");
				 for (i=29;i<=dias_mes;i++){
				 printf("%d ", i);}
				 printf("\n");
			break;
			}
}else{
	 printf("\nO mes tem que ser de 1 a 12\n\n");}
	return EXIT_SUCCESS;
}

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Continue navegando