Ir ao conteúdo

Posts recomendados

Postado

gente estou aprendendo funções e o meu código esta dando esse erro " erro assignment to expression with array type"

não estou conseguindo resolver: vocês podem me da um feedback também sobre os meus usos de funções não sei se esta certo; 

#include <stdio.h>

//funçao para exibir uma mensagem.
void mensagem1()
{
	printf("digite os valores da matriz: \n");
}

void mensagem2()
{
	printf("nova matriz\n");
}

//funçao para preenchimento de matriz.
void preenchimento_de_matriz(int a[4][4])
{
	//declaraçao de funçoes
	void mensagem1();
	void mostra_matriz(int a[4][4]);

	//chamamento de funçao.
	mensagem1();

	for (int i = 0; i < 4; ++i)
	{
		for (int j = 0; j < 4; ++j)
		{
			scanf("%d", &a[i][j]);
		}
	}
}

//funçao para exibir matriz.
void mostra_matriz(int a[4][4])
{
	for (int i = 0; i < 4; ++i)
	{
		for (int j = 0; j < 4; ++j)
		{
			printf(" %d",a[i][j]);
		}
		printf("\n");
	}
}

void troca(int a[4][4],int b[4], int c[4])
{
	for (int i = 0; i < 4; ++i)
	{
		a[i] = ((a[0][i]*2)/2);
		a[i] = ((a[i][0]*2)/2);
		a[0][i] = c[i];
		a[i][0] = b[i]; 
	}
}

int main()
{
	int mat[4][4], vet1[4]={0}, vet2[4]={0};

	// chamando funçoes.
	preenchimento_de_matriz(mat);
	mostra_matriz(mat);
	troca(mat,vet1,vet2);
	mostra_matriz(mat);

	return 0;
}

 

gente achei o erro kkkk

  • Obrigado 1
Postado
17 horas atrás, Edinei Almeida disse:
void troca(int a[4][4],int b[4], int c[4])
{
	for (int i = 0; i < 4; ++i)
	{
		a[i] = ((a[0][i]*2)/2);
		a[i] = ((a[i][0]*2)/2);
		a[0][i] = c[i];
		a[i][0] = b[i]; 
	}
}

 

Você declarou a como int[4][4] então não pode escrever a[i] = um int... É o que o compilador está te dizendo.

 

a[i] é int[4] mas (a[0][i] * 2) / 2 é só um número.

 

 

  • Curtir 1

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