1 / 1 / 0
Регистрация: 25.04.2009
Сообщений: 15
1

помогите подправить программу

09.04.2012, 21:01. Показов 518. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, есть следующее задание: С клавиатуры ввести текст, признаком конца ввода считать точку. Создать две функции для работы с текстом:
• подсчёт количества слов;
• поиск самого короткого слова.

Код:

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
#include <windows.h>
#include <stdio.h>
int quantity(char array[ ], int k)
{
    int amount=1;
    for (int i=0;i<k;i++) if(array[i]=='_') amount++;
    return amount;
}
void word(char array[ ], int k)
{
    int j=0;
    int sm=0;
    int temp=0;
    int buf[80];
    int index_begin[80];
    int index_end[80];
    char word[80];
    for (int i=0;i<k;i++) {buf[i]=0; index_begin[i]=0; index_end[i]=0;}
    for (i=0;i<k;i++) 
    {
        if(array[i]=='_') {temp++; index_begin[temp]=i+1;} 
        else {buf[temp]++; index_end[temp]=i;}
    }
    sm=buf[0];
    for (i=0;i<temp;i++) if(buf[i]<sm) sm=i;
    for (i=index_begin[sm];i<=index_end[sm];i++) {word[j]=array[i]; printf("%c",word[j]); j++;}
}
void main()
{
    int i,k,amount;
    char text[80],sym;
    k=0;
    for (i=0;i<80;i++) text[i]='.';
    printf ("Enter text:\nThe prevention 1: text will be read to'.'\nThe prevention 2: instead of blanks use '_'\n");
    scanf ("%s",&text);
    while (sym!='.') {sym=text[k]; k++;}
    amount=quantity(text,k);
    printf("Quantity of words: %d.\n",amount);
    printf("The shortest word: '");
    word(text,k);
    printf("'.\n");
}
Помогите подправить пожалуйста.

Добавлено через 1 час 22 минуты
все еще нужна помощь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2012, 21:01
Ответы с готовыми решениями:

Помогите подправить код
Задача. Вводится n-значный массив состоящий из целых элементов. Надо найти произведение четных...

c++ пожалуйста помогите подправить код
Нужно переставить местами два указаных столбца(q,w).Написал этод код,а он переставляет только 1-3 и...

помогите пожалуйста подправить код
C++.Нужно удалить элемент из массива.Выдает ошибку - : error C2105: '--' needs l-value...

Подправить программу
Помогите, пожалуйста, подправить программу. Задание следующее: Даны действительные числа a, b,...

2
9 / 13 / 3
Регистрация: 07.04.2012
Сообщений: 56
09.04.2012, 23:31 2
Вот считает количесто слов!
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
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#include <ctype.h>
 
void main()
{
  char *a = new char [82];
  int i = 0 ,j = 0 ,k = 1;
  puts("Vvedite stroku:");
  gets(a);
  int n = strlen(a);
 
  while(i < n)
     if( (ispunct(a[i])) || (a[i]==' ') )/*Åñëè a[i] ðàâåí çíàêó ïóíêòóàöèè*/
     {
        /*Ïðîâåðÿåì ñëåäóþùèå a[i]-å íà çíàêè ïóíêòóàöèè*/
        while((ispunct(a[i])) || (a[i]==' '))
        {
           j=j+1;
           i=i+1;
        }
        /*Ñ÷èòàåì ñëîâà*/
        k=k+1;
     }
     else
     {
        j=j+1;
        i=i+1;
     }
  printf("\n Kol slov -> %d",k);
  getch();
}
Если никто сегодня не подскажет насчёт второй задачки, напишу завтра вечером!
1
1 / 1 / 0
Регистрация: 25.04.2009
Сообщений: 15
09.04.2012, 23:41  [ТС] 3
Спасибо, я уже разобрался. Просто нужно было инициализировать sym=0, и все работает
0
09.04.2012, 23:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.04.2012, 23:41
Помогаю со студенческими работами здесь

Подправить программу
помогите, пожалуйста. программа работает только когда вводятся числа по условию от 3 до 9. когда...

Необходимо подправить программу
я написал программу: #include &lt;iostream&gt; #include &quot;liquid.h&quot; #include &quot;SpNapitki.h&quot; using...

Нужно подправить программу
Нужно чтобы программа выводила сообщение &quot;такого элемента нет&quot; если указанной цифры нет в массиве....

Подправить программу на миссивы, си++
Вопрос в тексте кода. Помогите, пожалуйста. #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru