switch (Len) {
case (0):
sprintf(str, "%14.0f", d);
break;
case (1):
sprintf(str, "%14.1f", d);
break;
case (2):
sprintf(str, "%14.2f", d);
break;
case (3):
sprintf(str, "%14.3f", d);
break;
case (4):
sprintf(str, "%14.4f", d);
break;
default:
sprintf(str, "%14.5f", d);
break;
}

これで画面に表示すると、0を取り除いた数が表示されますが
如何せん変数の宣言とソースの行数が多すぎて、もっと簡単な方法がないかと考えた次第です
良い知恵などあったらお願いします