Use datenum
to convert to a serial date number and then datestr
to build the string with appropriate format:
h = 13.0501; %// your computed decimal time
string = datestr(datenum([0 0 0 h 0 0]),14); %// or change "14" for other formats
The two formats you specify correspond to formats 13 through 16 in datestr
(see link to the documentation above). For example, with format 14 the string is
>> disp(string)
1:03:00 PM