第六题没有看明白 求解析

img


第六题请看一下 希望来给我看一下 各位 真的是写了半天没写出来.谢谢各位

如有帮助望采纳,谢谢


#include <stdio.h>
#include <string.h>

int
main(int argc, char *argv[]) {

    char first_name[40];
    char last_name[40];
    int first_name_space, last_name_space;

    printf("Please enter your first name: \n");
    scanf("%s", first_name);
    printf("Please enter your last name: \n");
    scanf("%s", last_name);

    printf("%s %s\n", first_name, last_name);

    first_name_space = strlen(first_name) - 1; //计算名前的空格数
    last_name_space = strlen(last_name) - 1;  //计算姓前的空格数

    printf("%*s%d %*s%d\n", first_name_space, "", strlen(first_name),last_name_space, "", strlen(last_name));
    printf("%s %s\n", first_name, last_name);
    printf("%d%*s %d%*s", strlen(first_name), first_name_space, "", strlen(last_name), last_name_space, "");

    return 0;
}

img

我是这样理解,定义连个字符串,在输入两个字符串赋值,sacnf("%s%s",&a,&b);最后分别就算它们连个的字符串长度,c,d,最后打印出a ,b换行和c,d