scanf e strcmp com c string

Eu achei um bomexemplo de como usar o strcmp, mas ele só funciona com fgets (), e eu preciso fazê-lo funcionar com o scanf. Então, aqui está o código:

int main(void) {
char fruit[] = "apple\n";
  char ans[80];
  do {
     printf ("Guess my favorite fruit? ");
     scanf ("%s",ans);
  } while (strcmp (fruit, ans) != 0);
  puts ("Correct answer!");
  return 0;
}

Mesmo quando escrevo a resposta correta ("maçã"), ela permanece no loop e fica me perguntando qual é a fruta favorita ... Acho que tem algo a ver com os caracteres que não estão escritos em ans [80] (Eu preciso que seja uma matriz de caracteres com 80 caracteres no máximo). Eu não estou entendendo isso ...

Desde já, obrigado.

questionAnswers(3)

yourAnswerToTheQuestion