Ir ao conteúdo
  • Cadastre-se

Preciso de exemplos.


LeoNarciso

Posts recomendados

Bicho eu to muito enrolado nesse assunto de como repassar por função, olha esse código:


#include <iostream>
using namespace std;

const int tam=10;

void menu();
void criar(char l[][50]);
void inserir(char it);
void listar(char l[][50]);

int opcao;

int main(){
system("color 47");

char lista[tam][50];
char item;
int qtd=0, inicio=-1, fim=-1;

menu();

while(opcao!=9){
while(opcao!=0&&opcao!=1&&opcao!=2){
cout<<"OPCAO INVALIDA! DIGITE NOVAMENTE O NUMERO DE SUA OPCAO: ";
cin>>opcao;
}//while !=0, 1, 2
if(opcao==0){
criar(lista);
break;
}
if(opcao==1){
inserir(item);
break;
}
if(opcao==2){
listar(lista);
break;
}
}//while !=9

if(opcao==9){
cout<<"\nOPCAO ESCOLHIDA: SAIR.\n\n";
}


getchar();
cout<<"\n\n\n";
system("pause");
return 0;
}

void menu(){
cout<<"* * * * * MENU * * * * *\n"<<endl;
cout<<"0 - CRIAR LISTA.\n";
cout<<"1 - INSERIR ITEM NO INICIO DA LISTA.\n";
cout<<"2 - EXIBIR LISTA COMPLETA.\n";
cout<<"9 - SAIR.\n\n\n";
cout<<"DIGITE O NUMERDO DA OPCAO DESEJADA: "<<endl;
cin>>opcao;
}


void criar(char l[][50]){
system("CLS");
cout<<"Opcao escolhida: CRIAR LISTA.\n\n";
for(int i=0; i<tam; i++){
cout<<"Digite o item "<<i+1<<" da lista: ";
gets(l[i]);
getchar();
}//for
system("cls");
menu();
}//cria


void inserir(char it){
system("cls");
cout<<"Opcao escolhida: INSERIR ITEM NO INICIO DA LISTA.\n\n\n";
cout<<"Digite o item a ser inserido: ";
cin>>it;
menu();
}//inserir


void listar(char l[][50]){
system("cls");
cout<<"Opcao escolhida: EXIBIR LISTA COMPLETA.\n\n";
for(int i=0; i<tam; i++){
cout<<l[i]<<endl;
}//for
cout<<"\n\n\n";
menu();
}//listar

simplesmente não consigo exibir a lista de forma correta.:S

Link para o comentário
Compartilhar em outros sites

Fiz umas mudanças, agora funciona.

#include <iostream>

using namespace std;

const int tam=10;

void menu(int *);
void criar(char l[][50]);
void inserir(char it);
void listar(char l[][50]);


int main(){
system("color 47");

int opcao;
char lista[tam][50];
char item;
int qtd=0, inicio=-1, fim=-1;

menu(&opcao);

while(opcao!=9)
{
while((opcao!=0)&&(opcao!=1)&&(opcao!=2))
{
cout<<"OPCAO INVALIDA! DIGITE NOVAMENTE O NUMERO DE SUA OPCAO: ";
cin>>opcao;
getchar();
}//while !=0, 1, 2

if(opcao==0)
{
criar(lista);
}
else if(opcao==1)
{
inserir(item);
}
else if(opcao==2)
{
listar(lista);
}
menu(&opcao);
}//while !=9

cout<<"\nOPCAO ESCOLHIDA: SAIR.\n\n";

cout<<"\n\n\n";

getchar();
return 0;
}

void menu(int *op)
{
cout<<"* * * * * MENU * * * * *\n"<<endl;
cout<<"0 - CRIAR LISTA.\n";
cout<<"1 - INSERIR ITEM NO INICIO DA LISTA.\n";
cout<<"2 - EXIBIR LISTA COMPLETA.\n";
cout<<"9 - SAIR.\n\n\n";
cout<<"DIGITE O NUMERDO DA OPCAO DESEJADA: "<<endl;
cin>>(*op);
getchar();
}


void criar(char l[][50])
{
system("CLS");
cout<<"Opcao escolhida: CRIAR LISTA.\n\n";
for(int i=0; i<tam; i++)
{
cout<<"Digite o item "<<i+1<<" da lista: ";
gets(l[i]);
}//for
system("cls");
}


void inserir(char it)
{
system("cls");
cout<<"Opcao escolhida: INSERIR ITEM NO INICIO DA LISTA.\n\n\n";
cout<<"Digite o item a ser inserido: ";
cin>>it;
getchar();
}//inserir


void listar(char l[][50])
{
system("cls");
cout<<"Opcao escolhida: EXIBIR LISTA COMPLETA.\n\n";
for(int i=0; i<tam; i++)
{
cout<<"["<<l[i]<<"]"<<endl;
}//for

cout<<"\n\n\n";
}//listar

Link para o comentário
Compartilhar em outros sites

ta dando um errinho nojento nesse código:


#include <iostream>
#include <cstring>
#include <cstdlib>
using namespace std;

const int tam=10;

int fim=-1, inicio=-1, qtd=0;

typedef struct taluno{
int id;
char nome[50];
char matricula[10];
};

taluno lista[tam];

void incluir(taluno aluno, int posicao);
taluno consultar(int posicao);
void listar();
void exibir(taluno aluno);

int main(){
taluno aluno;
strcpy(aluno.matricula, "20110101");
strcpy(aluno.nome, "Joao");
incluir(aluno,0);

strcpy(aluno.matricula, "20110102");
strcpy(aluno.nome, "Maria");
incluir(aluno,1);

aluno=consultar(0);
exibir(aluno);

strcpy(aluno.matricula, "20110103");
strcpy(aluno.nome, "Carlos");
incluir(aluno,0);

listar();
cout<<"\n\n\n\n";
system("pause");
return 0;
}

void incluir(taluno a, int p){
if(qtd==tam){
cout<<"Lista cheia!"<<endl;
system("pause");
return;
}//qtd==tam
if(qtd==0){
inicio=0;
}
fim++;
for(int i=fim; i>p; i--){
lista[i]=lista[i-1];
}
qtd++;
a.id=qtd;
lista[p]=a;
}

taluno consultar(int p){
taluno retorno;
if(qtd==0){
cout<<"Lista vazia!\n";
system("pause");
return retorno;
}//if
retorno=lista[p];
return retorno;
}//consultar

void listar(){
for(int i=inicio; i<=fim; i++){
exibir(lista[i],i);
}//for
}//listar

void exibir(taluno a, int p){
cout<<"Aluno "<<p<<": "<<a.id<<"\t"<<a.matricula<<"\t"<<a.nome<<endl;
}//exibir

que erro é esse?:S

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...