#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int format(char *format_string,char const *digit_string)
{
char *p = format_string + strlen(format_string);
char *p2 = (char *)digit_string + strlen(digit_string);
char *flag = format_string;
if(*digit_string == NULL)
return 0;
while(*flag!= 0)
{
if(*flag == '.')
break;
flag++;
}
for(;p2 >= digit_string && p >= format_string;)
{
if(*--p == '#')
{
*p = *--p2;
}
}
while(p != format_string - 1)
{
if(*flag != 0)
{
while(p >= flag - 1)
{
if(*p == '#')
*p = '0';
--p;
}
}
*p-- = 1;
}
puts(format_string);
return 1;
}
int main(void)
{
char str[] = "###,###,###.##";
char str1[] = "2343";
format(str,str1);
system("pause");
return 0;
}