#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define LEN 200
void name_abbreviated (char name[]) {
//printf("|%s|\n", name);
char last_name[20];
int j = 0, last_space_idx;
for(int i
= strlen(name
) - 1; i
>= 0; --i
) {
if(name[i] == ' ')
{
last_space_idx = i;
while(name[i])
last_name[j++] = name[++i];
last_name[j] = '\0';
break;
}
}
//printf("|%s|\n", last_name);
char rest_name[15];
rest_name[0] = name[0];
rest_name[1] = '.';
rest_name[2] = ' ';
j = 3;
for(int i = 3; i < last_space_idx; ++i)
{
if(name[i] == ' ')
{
rest_name[j++] = name[i + 1];
rest_name[j++] = '.';
rest_name[j++] = ' ';
}
}
rest_name[j - 1] = '\0';
//printf("|%s|\n", rest_name);
printf("%s, %s\n", last_name
, rest_name
); }
int main() {
char name[LEN];
printf("Type a full name : "); name_abbreviated(name);
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgoKI2RlZmluZSBMRU4gMjAwCgp2b2lkIG5hbWVfYWJicmV2aWF0ZWQgKGNoYXIgbmFtZVtdKSB7CgkvL3ByaW50ZigifCVzfFxuIiwgbmFtZSk7CgljaGFyIGxhc3RfbmFtZVsyMF07CglpbnQgaiA9IDAsIGxhc3Rfc3BhY2VfaWR4OwoJZm9yKGludCBpID0gc3RybGVuKG5hbWUpIC0gMTsgaSA+PSAwOyAtLWkpCgl7CgkJaWYobmFtZVtpXSA9PSAnICcpCgkJewoJCQlsYXN0X3NwYWNlX2lkeCA9IGk7CgkJCXdoaWxlKG5hbWVbaV0pCgkJCQlsYXN0X25hbWVbaisrXSA9IG5hbWVbKytpXTsKCQkJbGFzdF9uYW1lW2pdID0gJ1wwJzsKCQkJYnJlYWs7CgkJfQoJfQoJLy9wcmludGYoInwlc3xcbiIsIGxhc3RfbmFtZSk7CgljaGFyIHJlc3RfbmFtZVsxNV07CglyZXN0X25hbWVbMF0gPSBuYW1lWzBdOwoJcmVzdF9uYW1lWzFdID0gJy4nOwoJcmVzdF9uYW1lWzJdID0gJyAnOwoJaiA9IDM7Cglmb3IoaW50IGkgPSAzOyBpIDwgbGFzdF9zcGFjZV9pZHg7ICsraSkKCXsKCQlpZihuYW1lW2ldID09ICcgJykKCQl7CgkJCXJlc3RfbmFtZVtqKytdID0gbmFtZVtpICsgMV07CgkJCXJlc3RfbmFtZVtqKytdID0gJy4nOwoJCQlyZXN0X25hbWVbaisrXSA9ICcgJzsKCQl9Cgl9CglyZXN0X25hbWVbaiAtIDFdID0gJ1wwJzsKCS8vcHJpbnRmKCJ8JXN8XG4iLCByZXN0X25hbWUpOwoJcHJpbnRmKCIlcywgJXNcbiIsIGxhc3RfbmFtZSwgcmVzdF9uYW1lKTsKfQoKaW50IG1haW4oKSB7CiAgICBjaGFyIG5hbWVbTEVOXTsKICAgIHByaW50ZigiVHlwZSBhIGZ1bGwgbmFtZSA6ICIpOwogICAgZmdldHMobmFtZSwgTEVOLCBzdGRpbik7CiAgICBwcmludGYoIlxuIik7CiAgICBuYW1lX2FiYnJldmlhdGVkKG5hbWUpOwp9