Ir para conteúdo
Fórum Script Brasil
  • 0

Erro ao compilar."incompatible types in assignment of 'int' to 'char [25]'


Jorge Miguel

Pergunta

Sou iniciante na programação.
Estou com uma questão e na hora de compilar aparece o seguinte erro;

 [Error] incompatible types in assignment of 'int' to 'char [25]'

 

A questão é a seguinte:

Leia o nome, a idade e a renda familiar de um esportista do Clube Horse. Imprimir a categoria do esportista, com base na seguinte tabela:

IDADE CATEGORIA

até 15 anos Infantil

de 16 a 18 anos Juvenil

acima de 18 anos Adulto

Imprimir também a classe social do esportista, com base na tabela abaixo:

RENDA FAMILIAR CLASSE SOCIAL

até R$ 1.000,00 média baixa

de R$ 1.000,01 a R$ 3.500,00 média

acima de R$ 3.500,00 média alta

 

 

Uso a IDE "DEV C++" e fiz o seguinte:

#include <iostream>


	using namespace std;
	
	int main ()
	
{
	char nm[25], ct[25], cs[25];
	float rf, id;	

	
	cout<< "Qual o seu primeiro nome: ";
	cin>> nm;
	
	cout<< "Qual a sua idade: ";
	cin>> id;
	
	cout<< "Qual a sua renda familiar: ";
	cin>> rf;
	
	
	if ( id <= 15)
	{
		ct = 'Infantil';
	}
	
	else if (id > 15 && id <= 18)
	{
		ct = 'Juvenil';
	}
	
	else
		ct = 'Adulto';
		
		
	if ( rf <= 1000)
	{
		cs = 'Media Baixa';
	}
	
	else if ( rf > 1000 && rf <= 3500)
	{
		cs = 'Media';
	}
	
	else
		cs = 'Media Alta';
		
		
	cout<< "Sua categoria e: " << ct << "\n";
	cout<< "Sua classe social e: " << cs << "\n";
	
	system ("pause");
	return 0;
		
	
}

Esta faltando algo??

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
#include <iostream>
#include <cstring> //para usar strcpy(str1, str2) "string copy" incluir cstring lib, esta funçao copia str2 em str1
#include <cstdlib> //para system("Pause")
using namespace std;
	
int main (){
	char nm[25], ct[25], cs[25];
	float rf, id;	

	
	cout<< "Qual o seu primeiro nome: ";
	cin>> nm;
	
	cout<< "Qual a sua idade: ";
	cin>> id;
	
	cout<< "Qual a sua renda familiar: ";
	cin>> rf;
	
	
	if ( id <= 15)
	{
		strcpy (ct, "Infantil");
	}
	
	else if (id > 15 && id <= 18)
	{
		strcpy (ct,"Juvenil");
	}
	
	else
		strcpy (ct,"Adulto");
		
		
	if ( rf <= 1000)
	{
		strcpy (cs, "Media Baixa");
	}
	
	else if ( rf > 1000 && rf <= 3500)
	{
		strcpy (cs, "Media");
	}
	
	else
		strcpy (cs,"Media Alta");
		
		
	cout<< "Sua categoria e: " << ct << "\n";
	cout<< "Sua classe social e: " << cs << "\n";
	
	system ("pause");
	return 0;
}

Si está usando C_string devemos usar as funções de C, como strcpy para copiar um string em outro, não se permite fazer diretamente como str1 = str2, como no caso de usar a classe string de c++, para C_strings(strings tipo C) não que devemos usar strcpy(str1, str2); que é o equivalente a str1 = str2. Certifique-se que no str1 tenha suficiente espaço para caber str2 ou vai causar transbordamento de memória.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...