Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
vasiliy21
26 / 26 / 2
Регистрация: 24.10.2012
Сообщений: 135
#1

Вывод всех символов строки, расположенных после первого символа ":" - C++

02.11.2012, 18:27. Просмотров 803. Ответов 5
Метки нет (Все метки)

Есть задача:
С клавиатуры вводится строка. Составить программу, которая выводит на экран
все символы, расположенные после первого символа ":"; подсчитывает количество предложений,
содержащие нечетное количество слов; удаляет из текста все слова, которые расположены после
ком.

Подскажите почему выводит этот ноль?

Вывод всех символов строки, расположенных после первого символа ":"

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#include <iostream>
#include <string.h>
#include <conio.h>
 
const int n=10;
 
using namespace std;
 
void krapku(char []);
void koma(char []);
void kilkistneparnuxrechen(char[],int,int,int);
 
int main(){
    char str[n];
    krapku(str);
    char str1[n];
    koma(str1);
    
   int count = 0;
   int size; 
   int word = 1; ;
   char str2[100];  
   kilkistneparnuxrechen(str2,word,count,size);
getch();
return 0;
}
 
void krapku(char str[n])
{
     cout<<"vv string z : "<<endl;
     for(int i=0;i<n;i++)
       cin>>str[i];
    for(int i=0;i<n;i++){
        if(str[i]==':')
           for(int j=i+1;j<n;j++)
               cout<<str[j];
                          
        }
 }
void koma(char str1[n])
{
     cout<<endl;
     cout<<"vv string z ,"<<endl;
     int i=0;
    for( i=0;i<n;i++)
    cin>>str1[i];
    for(i=0;i<n;i++){ 
                       if(str1[i]==',')
                       for(int j=i;j<n;j++)
                       str1[j]='\0';
                       }
for( i=0;i<n;i++)
    cout<<str1[i];  
 }
 void kilkistneparnuxrechen(char str[100],int word,int count,int size){
{
    cout << endl;
    cout << "Enter string" << endl; 
    gets(str);  
    size = strlen(str);
    for (int i = 0; i < size; i++) 
    { 
        if(str[i] == ' ') 
            word++; 
        if(str[i] == '?' || str[i] == '!' || str[i] == '.') 
        { 
            if(word % 2 == 0) 
                count++; 
            word = 1; 
        } 
    } 
    cout << count << endl;
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.11.2012, 18:27     Вывод всех символов строки, расположенных после первого символа ":"
Посмотрите здесь:

Подсчитать в строке количество символов, меньших символа "К" - C++
Ввести строку символов. Подсчитать количество символов меньше символа «К». Вывести результат на экран. Помогите решить, пожалуйста.

Через каждые 5 символов добавить пробел и посчитать количество символа "X" - C++
Дан массив символов из 20 элементов. Через каждые 5 символов добавить пробел и посчитать количество символа &quot;X&quot; в массиве. Помогите...

Расположить элементы массива, лежащие до первого символа "к", в порядке, обратном алфавитному, и вывести на печать отсортирванный массив данных - C++
Срочно нужна помощь! Помогите написать код, очень прощу. Ввести с клавиатуры одномерный массив строк. Расположить элементы массива,...

Вывод цифр с помощью символа "*" - C++
Господа, помогите вывести звездочками цифры. Попроще, если можно. И с пояснением.

Дополнить строки знаками "+", чтобы все строки в нем имели длину 80 символов - C++
В текстовом файле f1 длина каждой строки не более 80 символов. Сформировать файл f2 таким образом, чтобы все строки в нем имели длину 80...

Вывод всех символов слова, кроме первого - C++
Условие такое: Пользователь вводит с клавиатуры слово. Программа выводит символы этого слова на экран кроме первого. Пожалуйста помогите.

Getchar() возвращает EOF сразу после чтения первого символа строки - C++
#include &lt;fstream&gt; #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;vector&gt; #include &lt;conio.h&gt; using namespace std; using...

Ввести строку символов после чего заменить все буквы "а" на ноль - C++
Доброго времени суток! Помогите пожалуйста написать лабу по Си. Задание: очень прошу помочь сделать это. Спасибо!

Рразделение строки на две части до первого вхождения заданного символа и после него - C++
Функция - Parse(s,t). Назначение - разделение строки s на две части: до первого вхождения символа t и после него. как можно сделать ее...

Замена в строке каждого второго символа "!" на "$" - C++
Ребята, напишите пожалуйста программу. Я даже представления не имею какую функцию нужно использовать в задаче: &quot;Ввести с клавиатуры...

Написать программу разбиения строки на две части: до первого вхождения заданного символа и после него - C++
8.5.1. Помогите, пожалуйста, решить задачу в С++. Написать программу разбиения строки на две части: до первого вхождения...

Вывод части строки после определенного символа - C++
Написал функцию: #include &lt;iostream.h&gt; #include &lt;string.h&gt; void main() { char stroka; cin&gt;&gt;stroka; char*primer; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vasiliy21
26 / 26 / 2
Регистрация: 24.10.2012
Сообщений: 135
02.11.2012, 18:47  [ТС]     Вывод всех символов строки, расположенных после первого символа ":" #2
Почему не работает
C++
1
gets(str);
BumerangSP
4285 / 1407 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
02.11.2012, 18:48     Вывод всех символов строки, расположенных после первого символа ":" #3
C++
1
2
for(int i=0;i<n;i++)
       cin>>str[i];
Вы символы должны вводить, а не строку целиком.
vasiliy21
26 / 26 / 2
Регистрация: 24.10.2012
Сообщений: 135
02.11.2012, 18:51  [ТС]     Вывод всех символов строки, расположенных после первого символа ":" #4
Но gets(str); должно работать все равно!
BumerangSP
4285 / 1407 / 121
Регистрация: 16.12.2010
Сообщений: 2,941
Записей в блоге: 3
02.11.2012, 18:57     Вывод всех символов строки, расположенных после первого символа ":" #5
Поставьте getchar(); перед gets. Нужно буфер очистить.

Добавлено через 1 минуту
И, раз уж нужно именно строку ввести, то надо исправить:
C++
1
2
for(int i=0;i<n;i++)
       cin>>str[i];
на:
C++
1
cin>>str;
В другой функции аналогично.
kravam
быдлокодер
1691 / 878 / 44
Регистрация: 04.06.2008
Сообщений: 5,423
02.11.2012, 18:59     Вывод всех символов строки, расположенных после первого символа ":" #6
Цитата Сообщение от vasiliy21 Посмотреть сообщение
Но gets(str); должно работать все равно!
видать какая-то фигня в буфере остаётся, надо его очистить, вот так:
C++
1
2
3
4
5
 void kilkistneparnuxrechen(char str[100],int word,int count,int size){
{
    cout << endl;
    fflush (stdin);
    cout << "Enter string" << endl;
...И да, обрати внимание на мою подпись!
Yandex
Объявления
02.11.2012, 18:59     Вывод всех символов строки, расположенных после первого символа ":"
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru