C++

Удалить первые буквы слов

Дана строка символов, которая обязательно заканчивается символом точки. Удалить из строки первые буквы каждого слова.
Примечание: написать программу с использованием стандартных функций библиотеки С++.

Enter the string and finish it with point:

Crystal Method.

So looks the input string without the first letters of each word:

rystal ethod


Ниже приведен код для этой задачи. Код самый простой и может усовершенствоваться (например разбиение его на несколько отдельных функции). В очередной раз мы благодарим Василия Шуверова за его код.
#include <stdio.h>
#include <stdlib.h>
#include<string.h>
 
int main ()
{
 
    char a[50000], s[50000];
    char b;
 
    int n=0,d=1,i,j=0;
 
    printf("Enter the string and finish it with point:\n\n");
 
    /*ввод предложения */
 
    do
    {
        b=getchar();
        a[n]=b;
        ++n;
    } while (b!= '.');
 
    --n;
 
    printf("\nSo looks the input string without the first letters of each word:\n\n");
 
    /*заполнение массива не начальными буквами каждого слова*/
 
    for (i=0;i<n;++i)
    {
 
        if (d)
        {
            a[i]=0;
            d=0;
            continue;
        }
 
        if (a[i]==' ')
        {
            d=1;
        }
 
        if (a[i] != '0')
        {
            s[j]=a[i];
            ++j;
        }
 
    }
 
        /*вывод предложения  на экран */
 
        for (i=0;i<j;++i)
        printf("%c", s[i]);
 
   return 0;
}
Теги:
Слова
Добавлено: 11 Апреля 2018 10:36:04 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...