Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > Символьный массив (C++)


Автор: Hetls 16.11.2016, 19:31
Дан символьный массив, образованный из слов, разделенных  пробелами.  
С использованием процедур и функций выполнить:
Подсчитать количество слов в тексте; проверить, есть ли  в  тексте заданное слово; поменять местами два слова текста с заданными номерами; вставить новое слово после  указанного и выдать на печать указанное слово текста.

Код

#include <cstdio>
#include <stdio.h>
#include <string.h>
#include <windows.h>
#include<iostream>

#define STRLEN 255
#define LEN 1000

int main(void){
charstr[STRLEN], wrd[STRLEN], *p;
size_tcount_all, count_word;

SetConsoleCP(1251);
SetConsoleOutputCP(1251);

printf("Massiv: ");
fgets(str, sizeof(str), stdin);
if ( p = strrchr(str, '\n') )
        *p = '\0';
printf("Slovo: ");
fgets(wrd, sizeof(wrd), stdin);
if ( p = strrchr(wrd, '\n') )
        *p = '\0';

count_all = count_word = 0;
for ( p = strtok(str, " "); p != NULL; p = strtok(NULL, " ") ){
        ++count_all;
if ( !strcmp(p, wrd) )
            ++count_word;
    }
printf("Vsegoslov: %d\n", count_all);
printf("Slovo \"%s\" vstretilos %d raz(a)\n", wrd, count_word);

return 0;}


char sin[LEN] = {'\0'};
charsout[LEN] = {'\0'};
char *p;
char swap[LEN];
char a[LEN / 10][LEN];

int k = -1, i, l, r;

printf("Vveditemassiv: ");
gets(sin);
        p = strtok(sin, " ");
while(p)
        {
k++;
strcpy(a[k], p);
            p = strtok(NULL, " ");
        }
printf("\nVveditenomeraslovdlyaobmena(l <= r): ");
scanf("%d %d", &l, &r);
if(l > r)
        {
printf("\n\nInput ERROR! Program close!");
return 1;
        }
strcpy(swap, a[l - 1]);
strcpy(a[l - 1], a[r - 1]);
strcpy(a[r - 1], swap);
for(i = 0; i< k; i++)
        {
strcat(sout, a[i]);
strcat(sout, " ");
        }
strcat(sout, a[k]);
printf("\n\nMassiv: %s", sout);
return 0;
    }



Подсчитывание количества слов в тексте, проверку заданного слова и смещение двух слов с заданными номерами, я смог сделать (а остальное я не понял, как можно реализовать), но компилятор выдаёт ошибку...

Автор: Hetls 17.11.2016, 08:18
неужто никто не поможет?(

Автор: bsa 17.11.2016, 12:49

M
bsa
Форум держится на его участниках. Если участники перестают помогать другим, форум умирает. Ты же даже просишь удалить эту тему, хотя лучше выложить решение, которое ты нашел сам.

Автор: Hetls 17.11.2016, 19:14
Тему прошу удалить, так как она не актуальна уже.

Автор: goodtext.goodtext 18.11.2016, 00:05
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

Автор: goodtext.goodtext 18.11.2016, 00:05
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

Автор: goodtext.goodtext 18.11.2016, 00:05
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

Автор: goodtext.goodtext 18.11.2016, 00:05
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

Автор: goodtext.goodtext 18.11.2016, 00:05
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

Автор: Hetls 18.11.2016, 11:33
Цитата(goodtext.goodtext @ 18.11.2016,  00:05)
Это код на С или С++?Не знаю Си.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Simvolny-massiv-&copy;-id582c8a3eb4c92c15704d6672#findElement_E7045_582e1b7c0ef42f4b933d58b3_0

http://forum.vingrad.ru/forum/topic-389873.html вот актуальная тема

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)