Tenho aqui um código de um vector com funções mas ao ler o código ele não me está a mostrar a o valor associado à posição do vector. Insiro o tamanho do vector (ex: 3), depois os valores que quero atribuir (ex: 2 9 20) e depois devia aparecer isto:
O valor 1: 2
O valor 2: 9
O valor 3: 20
Mas há frente de valor não me aparece os números que inseri.
//criar uma função que pede um valor ao utilizador, este valo vai ser o tamanho do nosso vector.
//declarar um vector com o tamanho inserido por este.
//preencher o vector com valores inseridos pelo utlizador (funcão)
//Uma funão que recebe como parâmetros, o vector e um inteiro, com o objectivo de percorrer o vector.
//Outra função para mostrar o conteúdo da posição do vector, esta função recebe um inteiro e mostra-o de seguida.
#include <stdio.h>
int pedir_tamanho();
int pedir_valor_vect(int n);
void func(int vector[], int tamanho);
void func_mostra(int vector[], int tamanho);
void mostra_int (int pos_vect);
int main ()
{
setvbuf (stdout, NULL, _IONBF, 0);
int tam = pedir_tamanho ();
int vect[tam];
func (vect, tam);
int i, soma=0;
//somar as posições do vetor
for (i=0; i<tam; i++)
{
soma=soma+vect[i];
}
func_mostra (vect, tam);
}
//pedir o tamanho do vetor
int pedir_tamanho (int tama)
{
printf ("Insira o tamanho do vector a criar: \n");
scanf ("%d", &tama);
return tama;
}
void func(int vector[], int tamanho)
{
int i;
for (i=0; i<tamanho; i++)
{
vector[i]=pedir_valor_vect(i);
}
}
//mostrar o vetor
void func_mostra(int vector[], int tamanho)
{
int i;
for (i=0; i<tamanho; i++)
{
mostra_int(vector[i]);
}
}
//pedir valores
int pedir_valor_vect(int n)
{
int a;
printf ("Insira numero %d: \n", n);
scanf ("%d", &a);
return a;
}
//mostra a posicão e o número
void mostra_int (int pos_vect)
{
printf ("O valor %d: \n", pos_vect);
}