Se alguém puder fazer um resumo explicativo desse programa agradeço muito=)
#include<stdio.h>
#include<stdlib.h.>
#include<string.h>
#define MAX 5
typedef struct {
char nome[50];
char tel[15];
}registro;
void inserir (registro *agenda,int cont); /*Funçoes sem retorno,passando o vetor de registro */
void modificar (registro *agenda,int x);
void mostrar (registro *agenda,int cont);
int main ()
{
registro agenda[MAX]; /*Vetor resgistro */
int i,cont=0,op,x;
for(;;)
{
system("color 0f");
system("cls");
printf(" ** Menu ** \n\n\n");
printf(" Digite a opcao desejada:\n\n\n1-Novo cadastro\n\n2-Modificar \n\n3-Mostrar banco de cadastro\n\n4-Sair\n");
scanf("%d",&op);
switch(op)
{
case 1:
if(cont<MAX)
{
inserir(agenda,cont); /*Como o próprio nome do vetor já é um ponteiro que aponta para o primeiro elemento do vetor,não é necessário passar o endereço do vetor*/
cont++;
break;
}
else
{
printf("Agenda cheia!\n\n");
getchar();
getchar();
break;
}
case 2:
if(cont){
printf("Numero do cadastro a ser modificado: ");
scanf("%d",&x);
modificar(agenda,x);
break;
}
else
{
printf("Banco de registro vazio!");
getchar() ; getchar() ;
}
break ;
case 3:
mostrar(agenda,cont);
break ;
case 4:
printf("\a");
exit (1) ;
break;
}
}
return 0;
}
void inserir (registro *agenda,int cont)
{
getchar();
printf("Digite o nome: ");
gets(agenda[cont].nome); /*alocaçao da string em cada indice do vetor,sendo variado pelo 'cont' */
printf("Digite o tel: ");
gets(agenda[cont].tel);
printf("Cadastro realizado com sucesso!");
getchar();
}
void modificar (registro *agenda,int x)
{
getchar();
printf("Digite o novo nome: ");
gets(agenda[x-1].nome); /* 'x-1' porque o vetor começa no indice 0 */
Pergunta
PaulaPoP
Se alguém puder fazer um resumo explicativo desse programa agradeço muito=)
#include<stdio.h>
#include<stdlib.h.>
#include<string.h>
#define MAX 5
typedef struct {
char nome[50];
char tel[15];
}registro;
void inserir (registro *agenda,int cont); /*Funçoes sem retorno,passando o vetor de registro */
void modificar (registro *agenda,int x);
void mostrar (registro *agenda,int cont);
int main ()
{
registro agenda[MAX]; /*Vetor resgistro */
int i,cont=0,op,x;
for(;;)
{
system("color 0f");
system("cls");
printf(" ** Menu ** \n\n\n");
printf(" Digite a opcao desejada:\n\n\n1-Novo cadastro\n\n2-Modificar \n\n3-Mostrar banco de cadastro\n\n4-Sair\n");
scanf("%d",&op);
switch(op)
{
case 1:
if(cont<MAX)
{
inserir(agenda,cont); /*Como o próprio nome do vetor já é um ponteiro que aponta para o primeiro elemento do vetor,não é necessário passar o endereço do vetor*/
cont++;
break;
}
else
{
printf("Agenda cheia!\n\n");
getchar();
getchar();
break;
}
case 2:
if(cont){
printf("Numero do cadastro a ser modificado: ");
scanf("%d",&x);
modificar(agenda,x);
break;
}
else
{
printf("Banco de registro vazio!");
getchar() ; getchar() ;
}
break ;
case 3:
mostrar(agenda,cont);
break ;
case 4:
printf("\a");
exit (1) ;
break;
}
}
return 0;
}
void inserir (registro *agenda,int cont)
{
getchar();
printf("Digite o nome: ");
gets(agenda[cont].nome); /*alocaçao da string em cada indice do vetor,sendo variado pelo 'cont' */
printf("Digite o tel: ");
gets(agenda[cont].tel);
printf("Cadastro realizado com sucesso!");
getchar();
}
void modificar (registro *agenda,int x)
{
getchar();
printf("Digite o novo nome: ");
gets(agenda[x-1].nome); /* 'x-1' porque o vetor começa no indice 0 */
printf("Digite o novo tel: ");
gets(agenda[x-1].tel);
printf("Cadastro realizado com sucesso!");
getchar();
}
void mostrar (registro *agenda,int cont)
{
int i;
for(i=0;i<cont;i++)
printf("cadastro[%d]:\n\nnome: %s\ntel:%s\n\n",i+1,agenda.nome,agenda.tel);
getchar();
getchar();
}
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.