dudas con LCD y funciones ARDUINO

hola a todos les tengo una pregunta un poco rara, en BASIC existe una función para los LCD que me controla la cantidad de dígitos a mostrar de una variable así:

LCDOUT $FE,1 ' LIMPIAR LCD
LCDOUT $FE,1, "Tiempo de espera "
LCDOUT $FE,$C0,"----(",dec2(MINUTOS),":",dec2(segundos),")----"
LcdOut $fe,$C2, 0

con DEC2 mostraremos solo 2 dígitos, quisiera saber sí en arduino hay alguna función parecida donde pueda recortar automáticamente los valores, en este pedacito de código:

if(digitalRead(bdr) == HIGH)
{
pos1=pos1+1;
serv1.write(pos1);
delay(50);
lcd.setCursor(0,0);
lcd.print("base a derecha ");
lcd.setCursor(0,1);
lcd.print(pos1);
lcd.setCursor(7,1);
lcd.print("Grados");

por ejemplo cuando la variable pasa de 100 y luego cuando la devolvemos con:

if(digitalRead(biz) == HIGH)
{
pos1=pos1-1;
serv1.write(pos1);
delay(50);
lcd.setCursor(0,0);
lcd.print("base a izquierda");
lcd.setCursor(0,1);
lcd.print(pos1);
lcd.setCursor(7,1);
lcd.print("Grados");

pasa de 100 a 990, 980, 970... es decir queda un cero remanente a la derecha que no se como desaparecer, a ver sí por favor me pueden ayudar
les agradezco de antemano.

usa sprintf, es la función que te permite encapsular todo menos floats.
un ejemplo simple

char buffer[20];
 lcd.setCursor(0,1);  
 sprintf(buffer,"%d Grados", pos1);
 lcd.print(buffer);

Hola SURBYTE, te agradezco tu aporte te cuento que funciona de maravilla pero ahora en la palabra grados queda remanente una "s" y queda el mensaje así: "1 Gradosss", "20 Gradoss", "115 Grados", es decir a medida que se reducen los dígitos va completando el espacio con s.

Hola.
Prueba a modificar la línea:

sprintf(buffer,"%03d Grados", pos1);