Hallo Felix,

folgender Code sollte funktionieren. Vielleicht hilft Dir das weiter:

Code:
char format[50];

if( irgendwas )
{  strcpy(format,"Hex: 0x%X");  }
if( irgendwas_anderes )
{  strcpy(format,"Dez: %d");  }

printf(format,Dein_Wert);
Drew