Most LCD devices have their own functions to write txt or characters. Sometime the compiler will already have built in functions for common displays. For instance on MikroC there are inbuilt functions for 16x2 text LED, and 128x64 GLCD.
Normally to write text to the display with those functions the syntax is something like this;
display_LCD_text(0,1,"blah");
where the text will be on line 0, starting from position 1, and will display the constant text "blah".
Or if you are using a buffer to hold and process your text before displaying (a good idea) then it more like this;
unsigned char txt[17]; // global buffer to hold 16 text chars + NULL
strcpy(txt,"foo"); // store temporary text into buffer
display_LCD_text(0,8,txt); // display the text in the middle of the top line
When you start downloading all the code projects for different LCDs etc you will see the coders usually implement a display text function for each LCD that is of very similar in use to that example.
On microcontrollers I have never used sprintf() or getc() putc() etc and looking in other people's LCD and GLCD code that would be a rare way to work with micros and displays.
The sprintf() is sometimes used, but is normally quite a large use (waste) of ROM just for that one function. It's common on smaller micros for people to use the smaller formatting functions CharToStr() or IntToStr() etc to turn a numerical variable into text. Those functions are small and fast. Then the static text can be added separately, simply by telling what position to display to.
like this;
display_LCD_text(0,0,"ADC="); // add static text
CharToStr(txt, ADC_value); // get the 0-255 value as text
display_LCD_text(0,4,txt); // display the number after the text tag (4 chars to the right)