Analise o código abaixo.
#include
#include
#define NIVEL_MINIMO_CAIXA 10
#define NIVEL_MAXIMO_CAIXA 980
int main(void)
{
float nivelMinimoCaixa, nivelMaximoCaixa, nivelMedicao;
printf("Informe o nível da medicao: ");
scanf("%f", &nivelMedicao);
char mensagem[30];
if (NIVEL_MINIMO_CAIXA >= nivelMedicao){
mensagem = "Ligar Bomba";
}else if (nivelMedicao >= NIVEL_MAXIMO_CAIXA){
mensagem = "Desligar Bomba";
}else{
mensagem = "Manter Bomba ligada";
}
printf("%s", mensagem);
}
De acordo com o contexto apresentado acima, assinale a alternativa correta que corrige os erros do código a fim de que seja impresso na tela o valor da variável mensagem?
Alternativas
Alternativa 1: Há um erro na declaração das constantes, faltou um sinal de atribuição.
Alternativa 2:Será apresentado erro de incompatibilidade de tipos na atribuição das mensagens na variável mensagem. O correto é utilizar a função strcpy();
Alternativa 3:Será apresentado erro de incompatibilidade de tipos na atribuição das mensagens na variável mensagem. O correto é utilizar a função strcomp();
Alternativa 4:Será apresentado erro de incompatibilidade de tipos na atribuição das mensagens na variável mensagem. O correto é utilizar a função strcat();
Alternativa 5:Será apresentado erro de incompatibilidade de tipos na atribuição das mensagens na variável mensagem. O correto é utilizar a função strlen();
Respostas
Resposta:
Alternativa 2: Será apresentado erro de incompatibilidade de tipos na atribuição das mensagens na variável mensagem. O correto é utilizar a função strcpy();
Explicação:
segue código corrigido:
#include<stdio.h>
#include<string.h>
#define NIVEL_MINIMO_CAIXA 10
#define NIVEL_MAXIMO_CAIXA 980
int main(void)
{
float nivelMinimoCaixa, nivelMaximoCaixa, nivelMedicao;
printf("Informe o nível da medicao: ");
scanf("%f", &nivelMedicao);
char mensagem[30];
if (NIVEL_MINIMO_CAIXA >= nivelMedicao){
strcpy(mensagem,"Ligar Bomba");
}else if (nivelMedicao >= NIVEL_MAXIMO_CAIXA){
strcpy(mensagem,"Desligar Bomba");
}else {
strcpy(mensagem,"Manter Bomba ligada");
}
printf("%s", mensagem);
return 0;
}
Resposta:
a resposta acima está correta
Explicação:
livro texto pagina 128