Преобразовать имя, отчество и фамилию человека к форме "фамилия, инициалы" - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Напишите программу, которая преобразует строку, содержащую имя, отчество и фамилию человека, к форме <фамилия> <инициалы> Входные данные Входная строка содержит имя, отчество и фамилию, разделённые одиночными пробелами. Выходные данные Программа должна вывести в одной строке сначала фамилию, а потом (через пробел) – инициалы.

Решение задачи: «Преобразовать имя, отчество и фамилию человека к форме "фамилия, инициалы"»

textual
Листинг программы
#include <stdio.h>
#include <string.h>
 
int main()
{
    char s[80], a, b, sn[30], *p;
    int i = 0, j = 0, n = 0;
    puts("Enter the full name by a space:");
    fgets(s, 80, stdin);
    p = s;
    while(sscanf(p, "%s", sn)){
        p += strlen(sn) + 1;
        if(!n)
            a = sn[0];
        if(n == 1)
            b = sn[0];
        if(n == 2)break;
        ++n;
    }
    for(i = 0, j = 0; sn[j]; ++i, ++j)
        s[i] = sn[j];
    s[i] = ' '; ++i;
    s[i] = a; ++i;
    s[i] = '.'; ++i;
    s[i] = b; ++i;
    s[i] = '.'; ++i;
    s[i] = '\0';
    puts(s);
    return 0;
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.727 из 5
Похожие ответы