Il seguente mi produce i risultati attesi, provalo:
Codice PHP:
//
// Compiled and tested with:
// i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5465)
//

#include <stdio.h>
#include <assert.h>

typedef struct rat Razionale;
struct rat {
      
int num;
      
int den;
};
   
static 
Razionale costruisci(int numint den) {
    
Razionale rat;
    
rat.num=num;
    
rat.den=den
    return 
rat;
}

static 
void DumpRazionale (const Razionale theRazionale){
    
assert (NULL != theRazionale);
    
printf ("theRazionale->num: %d;\n"theRazionale->num);
    
printf ("theRazionale->den: %d;\n"theRazionale->den);
}

int main (void){
    
int numeratoredenominatore;
    
Razionale razionale1;
    
scanf ("%d", &numeratore);
    
scanf ("%d", &denominatore);
    
razionale1=costruisci(numeratore,denominatore);
    
DumpRazionale (&razionale1);
    return 
0;