Ir ao conteúdo
  • Cadastre-se

C Como juntar dois vetores


Noob752

Posts recomendados

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

int main (){
void Leitura(void);
void Juncao(void);

	Leitura();
	Juncao();

return(0);
}


void Leitura(void){
int a[20],b[30];

	printf ("Digite um numero inteiro:\t ");
 	scanf ("%d",a);
 	
 	printf ("\nDigite um segundo numero inteiro:\t ");
 	scanf ("%d",b);
	
	
}

void Juncao(void){
int c[50],soma,a[20],b[30];

	soma=a[20]+b[30];
	
	printf("\nA judao dos dois vetores e:%d[%d]",c[soma]);
	
}

 

Realize a leitura de duas matrizes do tipo vetor A com 20 elementos e B com 30 elementos em uma função Leitura(). Construa uma matriz C, sendo essa a junção das duas outras matrizes em uma função Juncao(). Dessa forma, C deverá ter a capacidade de armazenar 50 elementos.

 

Alguem me ajuda na funcao Juncao, eu não consigo juntar dois vetores...

Link para o comentário
Compartilhar em outros sites

@Noob752 Acho que não é pra somar os elementos dos vetores, mas sim coloar todos os elementos do A e todos os elementos do vetor B no vetor C.

 

Então você pode declarar um vetor C com 50 elementos e adicionar todos os elementos de A usando um for (de 0 a 19) usando o mesmo índice para os dois vetores, depois em outro for (de 20 a 49) você adiciona os elementos de B em C, subtraindo 20 ao usar o índice em B.

Link para o comentário
Compartilhar em outros sites

int main (){
void Leitura(void);
void Juncao(void);

	Leitura();
	Juncao();

return(0);
}

 

Não está certo assim.

 

Os protótipos indicam ao compilador como tratar Leitura(0 e Juncao(). Ficam fora de qualquer função, como main().

 

Uma função que retorna void e não tem argumentos não serve para nada em geral: é um buraco negro. Use argumentos, retorne algo. Se quer juntar vetores não seria natural escrever

	C = Juncao ( A, B );

 

por exemplo?

Link para o comentário
Compartilhar em outros sites

1 hora atrás, Noob752 disse:

Realize a leitura de duas matrizes do tipo vetor A com 20 elementos e B com 30 elementos em uma função Leitura(). Construa uma matriz C, sendo essa a junção das duas outras matrizes em uma função Juncao(). Dessa forma, C deverá ter a capacidade de armazenar 50 elementos

 

Escreva em torno dos dados e não saia programando nada antes de entender o que está tentando resolver...

 

A tem 20 elementos, B tem 30 elementos. 

 

O enunciado fala em UMA função Leitura() e faz sentido: para isso a gente escreve uma função: uma função Leitura() lê um vetor. De qualquer tamanho com qualquer nominho.

 

Só que aí você declara
 

    void Leitura(void);


e aí ela não serve para nada. Tudo que tem dentro dela fica dentro, Tudo que está fora ou é desconhecido ou é global:

  • Se for desconhecido não adianta nada.
  • Se for global não pode ler vetores diferentes com a mesma função.

Use, como eu disse, parâmetros.

 

@Noob752 Entendeu o que eu expliquei antes sobre as declarações? Corrigiu?

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!