Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Подсчет символов в строке (http://forum.oszone.net/showthread.php?t=320765)

31echo_echo@vk 13-11-2016 23:00 2687327

Подсчет символов в строке
 
Помогите, пожалуйста, написать программу на языке C++, которая будет подсчитывать количество введенных слов, которые заканчиваются на букву f или F
Желательно БЕЗ использования массивов и указателей
Сама попыталась накидать это: (типа сначала пробелы заменяются на новые строки, потом считаются), но корректно оно не работает

#include<iostream>
#include<stdio.h>
#include<clocale>
int main()
{
int ka=0;
int c;
std::cout«"Vvedite posledovatelnost simvolov,zakanchivaushuysa EOF\n";
std::cin»c;
while((c=getchar())!=EOF)
if(c==' ')
{c='\n';
if(c='f\n')
{ka++;}}
std::cout«"\n Bilo vvedeno \n slov s f v konce:"«ka«"\n";
return 0;
}

shisik 14-11-2016 00:45 2687345

Код:

#include <iostream>
#include <cstdio>

int main()
{
    char c, prev = '\0';
    int f_count = 0;

    while ((c = getchar()) != EOF) {
        if (c == ' ' || c == '\n')
            if (prev == 'f' || prev == 'F')
                f_count++;
        prev = c;
    }

    std::cout << f_count << std::endl;

    return 0;
}

Как поместить EOF в окно терминала, надеюсь, знаете (Ctrl+D в *nix, Ctrl+Z в Win).


Время: 11:39.

Время: 11:39.
© OSzone.net 2001-