0
#include <stdio.h>
#include <string.h>
int main()
{
    int num_key=666;
    do
    {
        puts("\n\n\t*********************************************");
        puts("\t*                                           *");
        puts("\t*     Calculador de temperatura             *");
        puts("\t*                                           *");
        puts("\t*                                           *");
        puts("\t*                                           *");
        puts("\t*          DIGITE SUA SENHA                 *");
        puts("\t*                                           *");
        puts("\t*                                           *");
        puts("\t*                                           *");
        puts("\t*  DIGITE 0 PARA SAIR                       *");
        puts("\t*********************************************");
        scanf("%i",num_key);                    
    }while(num_key!=123);
}
I’m having a problem in that while loop, I can’t find the problem, it all comes running it from the bug and closes. I checked and redacted the logic twice.

You need to pass the address of your variable
num_keyin thescanf, it may be soscanf("%i", &num_key);– gato
Grateful friend, I wrote over 500 lines here already and went to forget it, lack of attention Thank you very much!
– AGenaro
I published in response.
– gato