//FACTOR = (65536 / 10) = 6554
#define FACTOR (6554UL)
#define MULLL(a,b) ((((unsigned long)(a)*FACTOR ) >> 16UL )* \
(unsigned long)(b))
unsigned int cc1 = 1000;
C_task main( void )
{
//Вызов MULLL( (INTмножимое), (INT)(FLOATмножитель*10) )
printf("10000*0.3=%d\n",MULLL(cc1,3)); // ( (a*10)*(b*10) ) / 10
printf("10000*0.4=%d\n",MULLL(cc1,4));
printf("10000*0.5=%d\n",MULLL(cc1,5));
printf("10000*1.5=%d\n",MULLL(cc1,15));
printf("10000*2.5=%d\n",MULLL(cc1,25));
}