Informática, perguntado por marcelokonzen, 1 ano atrás


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();

Soluções para a tarefa

Respondido por ksarshan
29

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;

}

Respondido por vulcao14
9

Resposta:

a resposta acima está correta

Explicação:

livro texto pagina 128

Perguntas interessantes