السلام عليكم,

كيف يمكنني تكملة البرنامج التالي حتى أتمكن من دمج أو append  عدة سلاسلstring بلغة السي:

   int getSeatRow(char *str){
    /* Param: str: the seat label in the format of 
    'A1' or 'A12' where the first index is a letter 
    and the second and third are numbers
    * Return: the number extracted from 
     the char pointer as '1' or '12' */
         int ans;
         sscanf(str, "%*[^0123456789]%d", &ans);
         return --ans;
   }


    char *concat(char *str1,  char *str2){
    int i;
    char append[strlen(str1)+strlen(str2)];
    char *label = "D10";
    int r = getSeatRow(label);
    int c = label[0]-65;
    for(i = 1; i <= 3; i++){
        sprintf(append, "%c%d", c+65+i, r+1);
        //strcat(label, append);
    }
    return str1;
}

حتى تصبح بالشكل التالي: D10, E10, F10, G10

و شكراً .....