Задачка на срезы по С

Задание такое:

Компания решила сделать дополнительный код для товара, который состоит из первых символов текстовых данных из полей «Код группы», «Название изделия», двух знаков * и трех последних цифр штрих-кода. Написать функцию, которая позволит это реализовать. Для реализации решения задачи информацию о коде группы, названии изделия и штрих-коде выводит пользователь.

Вот моя реализация, но она максимально костыльная. Как это можно лучше сделать?

#include <stdio.h>
#include <string.h> 
 
int main(void)
{
    int addCode() {
        char code[100], name[100];
        char barcode[10];
        char result, codeSlice, nameSlice, barcodeSlice;
        
        printf("Введите код группы: ");
        scanf("%s", &code);
        
        printf("Введите название изделия: ");
        scanf("%s", &name);
        
        printf("Введите штрих-код: ");
        scanf("%s", &barcode);
        
        codeSlice = code[0];
        nameSlice = name[0];
        
        result = codeSlice + nameSlice + "**" + barcode[8] + barcode[9] + barcode[10];
        printf("Дополнительный код: %s", &result);
    }
    addCode();
}

Ответы (1 шт):

Автор решения: Harry

У вас получается один символ, в который вы запихиваете сумму символов и адреса строки "**". По условию, как мне кажется, имеется в виду

char result[8] = "  **   ";
result[0] = code[0];
result[1] = name[0];
strncpy(result+4,barcode+strlen(barcode)-3,3);

printf("%s\n",result);
→ Ссылка