Ir ao conteúdo
  • Cadastre-se

C Imprimir valores armazenados em uma função com outra função


TRMM

Posts recomendados

BOA NOITE! 

NÃO CONSIGO IMPRIMIR OS VALORES DIGITADOS.

 

A OPÇÃO 2 DO MENU SERIA PARA IMPRIMIR OS VALORES INSERIDOS NA OPÇÃO 1. 

 

SEGUE MEU CÓDIGO: 


#include<stdio.h>
#include<stdlib.h>

int cadastro_vetor (int num){                       //fução para usuario inserir os valores
    
    int vet[10];      
    
 for(num=0; num<10; num++){                          // laço para vetor de 10 posições
     printf("\nDigite um numero: ");
         scanf("%d", &vet[num]);    
}
    printf("\n\n!!! Os valores acima foram armazenados !!!");
    
return (0);                                                // função será encerrada e prosseguira para menu de opções.                            
 }    


void imprime_vetor (){                                  // função para imprimir os valores digitados
    
    int num;
    int vet [10];
            
        for(num = 0; num < 10; num++){                           ........... NÃO ESTÁ IMPRIMINDO OS VALORES INSERIDOS ........
            printf("\n Posicao [%d] = [%d]", num, vet[num]); 
            
        }
                    
    }                


int menu (){                                    //função destinado ao menu de opções


int opcao;

printf("\n\n_____________MENU______________");
        printf("\n [1] Cadastrar os valores do vetor");
        printf("\n [2] Imprimir o vetor");
        printf("\n [3] Sair");
            printf("\n\nInforme a opcao desejada: ");
                scanf("%d", &opcao);
            
            return (opcao);                                        // função com retorno
}

int main(){
    
    int  num, entrar;
    
               entrar = menu();                              // variavel para iniciar e percorrer a função menu
                
                while (entrar!=3){                           //condição para opção do menu.
                
                
                switch (entrar){                             
                    
                    case 1: 
                        cadastro_vetor(num);
                        break;
                        
                    case 2: 
                        imprime_vetor();
                        break;
                        
                    case 3:
                        printf("\n\nSaindo");
                        break;
                                
                    default: 
                        printf("\n>>>>>>>Valor invalido<<<<<<<<");                         
                        break;
            }
            
            entrar = menu();                                                             
            
                }                
                
}

 

Link para o comentário
Compartilhar em outros sites

Não consigo fazer um código agora, mas posso explicar o motivo disso, repare que na função de inserir, você cria o vetor lá, porém ao sair dessa função nada será salvo, e na de ler igualmente, você só chamou a função e dentro dela criou mais um vetor, porém não há nada dentro dele, basicamente foi isso o erro.

 

Solução: Criar o vetor na main e passar como parâmetro das funções, exemplo

void insere(int vet[], int n){
  
  for(int i=0; i<n; i++){
    printf("N%d: ", i);
    scanf("%d", vet[i]);
    }
  
 }

void imprimeVetor(int vet[], int n){
  
  for(int i=0; i<n; i++)
    printf("\n%d", vet[i]);
  
}

Utilizando essas funções na main:

int main(){

  int vet[10];

  insere(vet, 10);
  imprimeVetor(vet, 10);

 return 0;
}

Fiz no celular correndo aqui, lembrando que é só um exemplo, mas caso não entenda, estude sobre como passar vetor para função, tem muitos vídeos sobre o assunto, boa sorte nos estudos!  

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...