ma non mi fa vedere comunque il messaggio.. come mai?
Il buffer di input rimane sporco e la getchar viene "saltata". Pulisci il buffer in maniera simile a questa:

Codice PHP:
#include <stdio.h>

void flush()
{
    
char ch;
    while ( (
ch getchar()) != '\n' && ch != EOF);
}

void flushd()
{
    
char ch;
    do {
        
ch getchar();
        if(
ch == EOF)
            
printf("C'era ancora: EOF\n");
        else if(
ch == '\n')
            
printf("C'era ancora: newline\n");
        else
            
printf("C'era ancora: %c\n"ch);
    } while(
ch != '\n' && ch != EOF);
}
    

int main()
{
    
int a;
    
int b;
    
    
printf("Inserisci il primo valore:\t");
    
scanf("%d",&a);
    
flushd();
 
    
printf("Inserisci il secondo valore:\t");
    
scanf("%d",&b);
    
flushd();
    
    if(
== b)
    {
        
printf("%d e' uguale a %d"ab);      
    }
    if(
b)
    {
        
printf("%d e' maggiore di %d"ab);            
    }
    else
    {
        
printf("%d e' maggiore di %d"ba);              
    }
    
    
getchar();
    return 
0;

nel main ho messo "flushd" per farti vedere quello che c'è nel buffer, mentre sta per essere svuotato. Ovviamente, la versione senza output è "flush".
Prova a fare qualche prova e a vedere quello che rimane nel buffer. Ad esempio, quando ti chiede un numero, scrivi qualcosa tipo "100 asdflahsdflò", cioè il numero, lo spazio e altri caratteri.