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

Вывести в алфавитном порядке последние слова всех предложений - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти минимальный элемент массива, поставить его на первое место, остальные элементы сдвинуть http://www.cyberforum.ru/cpp-beginners/thread297470.html
а)Дана последовательность n элементов в виде массива. Найти минимальный элемент массива,паставить его на первое место,остальные эл.сдвигаются. б)Дана матрица А размерности m*n и вектор Х размерности m. Найти произведение Х*А. Помогите решить!!!у меня не получается!!!
C++ строка с нечетной длиной слов Дана строка. Сформировать новую строку, скопировав в нее слова исходной строки, которые имеют нечетную длину, разделить слова пробелом. На Си. Очень прошу вашей помощи со строками дуб дубом http://www.cyberforum.ru/cpp-beginners/thread297437.html
Структура последовательности типа C++
в чем смысл этой структуры...Я ничего не могу найти в интернете по этой теме...
C++ В массиве B[10] найти максимальный элемент, его порядковый номер и произведение его элементов.
Ниже программа на определение максимального элемента(нужно только в printf чет записать)). В заголовке написано что еще нужно, желательно по этому тексту программы делать. # include <stdio.h> # define B10 int main(void) { int B, max, i; printf(“\n vvedite %d chisel:\n”, 10); for(i=0; i<10; i++);
C++ Бинарные деревья(( http://www.cyberforum.ru/cpp-beginners/thread297414.html
вот такое задание ... Вершина дерева содержит указатель на строку и динамический массив указателей на потомков. Размерность динамического массива в корневой вершине - N, на каждом следующем уровне - в 2 раза больше. Функция при включении строки создает вершину, наиболее близкую к корню. заранее спасибо
C++ Реверсы У кого-то есть код програмы игры реверсы, в консольном виде, очень надо. подробнее

Показать сообщение отдельно
Erisu
0 / 0 / 0
Регистрация: 15.12.2010
Сообщений: 14
17.05.2011, 06:59     Вывести в алфавитном порядке последние слова всех предложений
Помогите, пожалуйста, исправить код, а то дуб дубом((Не могу никак дойти(
Дан текст, состоящий из N (2<=N<=10) строк с максимальной длиной 80 символов. Необходимо вывести в алфавитном порядке последние слова всех предложений. Считать, что текст написан синтаксически грамотно, в качестве знаков препинания используются точка и запятая, слова состоят только из букв, перенос слов по слогам отсутствует. Для выделения слов из строки создать пользовательскую функцию.

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
75
76
77
78
79
80
81
82
83
84
85
86
#include <vcl.h>
#pragma hdrstop
#include<stdio.h>
#include <stdlib.h>
#include <string.h>
#include <iostream.h>
//---------------------------------------------------------------------------
 
#pragma argsused
 char slova(char str[], char **qq, int r)
{char *p;
int g=r;
p=strtok(str," !?,.");
while (p!=NULL)
{
 strcpy(qq[r],p);
r++;
p=strtok(NULL," !?,.");}
return r;}
 
int main(int argc, char* argv[])
{  int n,i,q=0,c=0,g=0,j=0; char *t,ff[80];
char str[10][80]={"I like to wearo high-heeledo shoesee, trousers oor jeans.",
                   "Aaaarrr ttttttr oot iyt tiropeweo!",
                   "Russia is very reach in oil, iron ore, natural gas, copper, nickel.",
                   "It is a wonderful sight you see our country from the plane.",
                   "Throughout its history the Zoo has had many well-known residents.",
                   "The lakes in Scotland are called locks.",
                   "Thames is busiest and most important river in Great Britain.",
                   "Although this vast collection was part of the Zoo's appeal.",
                   "These include species such as rudd, European eels, pink sea fans.",
                   "There is much rain and fog in autumn and in winter!"};
while((n<2)||(n>10))
{printf("Vvedite chislo strok ot 2 do 10:");
scanf("%d",&n);
printf("\n");}
 
printf("Dannie stroki:\n");
for (i = 0; i <n; i++)
{printf("%s\n",str[i]);
strcpy(ff,str[i]);
t=strtok(ff," !?,.");
while (t!=NULL)
{q++; t=strtok(NULL," ,.!?-");}
}
 
char **qq;
qq=(char**)calloc(q,sizeof(char*));
for (i = 0; i <n; i++)
{qq[i]=(char*)calloc(80,sizeof(char));}
 
int r=0;
for (i = 0; i <n; i++)
{
r=slova(str[i],qq,r);}
 
 char *p;
 p=(char*)calloc(n+1,sizeof(char));
 
 for (i = 0; i <r; i++)
  { c=strlen(str[i]);
  if (i==(c-1))
 { strcpy(qq[j],str[i]);
 }
  for (int g=0; g<(r-1); g++)
for (int j=g+1; j<r; j++)
 if (strcmpi(qq[g], qq[j])>0)
{
  strcpy(p,qq[g]);
  strcpy( qq[g], qq[j]);
  strcpy (qq[j], p);
}
 
printf("\n");
for (int g=0; g<r; g++)
printf("%s\n", qq[g]);
 
for (int i = 0; i<1000; i++)
free (qq[i]);
free (qq);
 
free (p);
 
 getchar();getchar();
    return 0;}
}
 Комментарий модератора 
Используйте теги форматирования кода!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru