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

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

Войти
Регистрация
Восстановить пароль
 
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
#1

Строка - C++

26.01.2010, 09:47. Просмотров 517. Ответов 3
Метки нет (Все метки)

Дана строка-предложение на русском языке. Вывести самое короткое слово в предложении. Если таких слов несколько-то вывести последнее из них. Словом считать набор символов, не содержащий пробелов, знаков препинания и ограниченный пробелами, знаками препинания или началом/ концом строки.

надо на си. Строку вводить с клавиатуры.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.01.2010, 09:47     Строка
Посмотрите здесь:

Создать запись «Кинофильм» с полями: «Название» (строка), «Страна» (строка) - Turbo Pascal
В заголовок окна программы записать свои данные: имя, фамилию и номер варианта. - Для всех вариантов количество записей в массиве...

Строка -> Массив = [Строка] - JavaScript
AJAXом получаю данные, но приходит либо массив либо строка. Так вот надо данные привести к одному виду, а именно - массиву. Т.е. было...

Есть строка определенной длины. Вторая строка меньше первой. Найти точку в которой вторая строка входит в первую - Java SE
Условие: Есть строка определенной длины. Вторая строка меньше первой. Найти точку в которой вторая строка входит в первую.

Получить действительный матрицу А( n,m) Первая строка которого задана формулой C1j=2*j+3, вторая строка задается формулой С2j=2+1/j, а каждая следующая строка есть сумма предыдущих. - Turbo Pascal
Получить действительный матрицу А( n,m) Первая строка которого задана формулой C1j=2*j+3, вторая строка задается формулой С2j=2+1/j, а...

Дана строка. Подсчитать сколько раз первая строка входит во вторую - C++
Дана строка. Подсчитать сколько раз первая строка входит во вторую. Например: вводим "при" (строка должна вводиться с клавиатуры, как на...

Событие SheetChange: последняя строка и выделенная строка является одинаковой величиной - Visual Basic .NET
Не срабатывает корректно событие. При вводе данных в следующую строку после последней, последняя строка и выделенная строка является...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
26.01.2010, 10:47     Строка #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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define H 6
#define W 6
 
void main(){
char str[] = "V CHAFD LKR PP KK FXJJ";
int count  = 0;                //счётчик символов в слове
unsigned int posStr = 0;       //позиция в строке
 
unsigned lenght = strlen(str);          //длинна строки
 
 
char matrix[H][W] = {0};
//Считываем все слова в матрицу
int i =0 ,j =0;
unsigned int p = 0;
for(i=0;i<H;i++){
    p=posStr;
    for(j=0;p<strlen(str);j++,p++){
            if(str[p]==' '){
            posStr=p;
            posStr++;
            p = lenght;
            continue;
            }
            if(str[p]!=' ')matrix[i][j]=str[p];  //записываем в строку
        
    }
 
    
}
 
 
//Выводим собранное
for(int u=0;u<H;u++){
    for(int k=0;k<W;k++){
printf(" ");printf("%c",matrix[u][k]);
 
    }
printf("\n");
}
 
 
 
}
Bloodykeeper
This party getting crazy!
78 / 74 / 1
Регистрация: 22.09.2009
Сообщений: 427
26.01.2010, 10:55  [ТС]     Строка #3
Надо в общем виде с гетс. Идей вообще нету(
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.01.2010, 11:52     Строка
Еще ссылки по теме:

Сортировка строк по году рождения (1945 - 1 строка, 1944 - 2 строка) - C#
Здравствуйте форумчане, необходима ваша помощь. Дан текстовый файл:&quot; Kaligoev Paul Ignashevich 1997 School №76, Street 56, Astrakhan,...

Строка: Определить, содержит ли строка только символы 'а', 'Ь', 'с' или нет - Delphi
Дана строка. Определить, содержит ли строка только символы 'а', 'Ь', 'с' или нет.

Дана строка символов. Проверьте,является ли данная строка палиндромом - C++
Парни нужна помощь,нужен код решения этой задачи на языке с++. Дана строка символов. Проверьте,является ли данная строка палиндромом.

В папках пропала строка меню,адресная строка и панель инструментов - Windows XP
У меня на компьюторе в папках пропала строка меню,адресная строка и панель инструментов.Подскажите как их вернуть? Причина пропажи строки...


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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
26.01.2010, 11:52     Строка #4
Попробуй в gets сам это не сложно, только чтоб в строке не более 20 символов.
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
#define H 6
#define W 6
 
void main(){
char str[] = "V CHAFD LKR PP KK FXJJ";
 
 
int count  = 0;                //счётчик символов в слове
unsigned int posStr = 0;       //позиция в строке
 
unsigned lenght = strlen(str);          //длинна строки
 
 
char matrix[H][W] = {0};
//Считываем всё слово в матрицу
int i =0 ,j =0;
unsigned int p = 0;
for(i=0;i<H;i++){
    p=posStr;
    for(j=0;p<strlen(str);j++,p++){
            if(str[p]==' '){
            posStr=p;
            posStr++;
            p = lenght;
            continue;
            }
            if(str[p]!=' ')matrix[i][j]=str[p];  //записываем в строку
        
    }
 
    
}
//Выводим собранное
for(int u=0;u<H;u++){
    for(int k=0;k<W;k++){
printf(" ");printf("%c",matrix[u][k]);
 
    }
printf("\n");
}
 
int mcount = 2;  //максимальное кол-во в строке
int posMin = 0;      //позиция строки с минимальным кол-вом символов
 
//Еще самое короткое слова в матрице
for(i=0;i<H;i++){
    for(j=0;j<W;j++){
        if(matrix[i][j]!=' '){
        count++;
        }
 
    }
if(count<mcount){
mcount = count;       //получаем максимальное кол-во
posMin = i;
}
 
}
//выводим строку через матрицу
for(int r = 0;r<W;r++)
printf("%c",matrix[posMin][r]);
 
 
}
Добавлено через 17 минут
Сейчас тебе c gets и pust будет

Добавлено через 13 минут
Вот кое что
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
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
 
#define H 10
#define W 10
 
void main(){
char str[26];
 
puts("Input string\t");        //введи строку максимум 90 символов
gets(str);                     //получаем в строку
 
 
int count  = 0;                //счётчик символов в слове
unsigned int posStr = 0;       //позиция в строке
unsigned lenght = strlen(str);          //длинна строки
char matrix[H][W] = {0};
//Считываем всё слово в матрицу
int i =0 ,j =0;
unsigned int p = 0;
for(i=0;i<H;i++){
    p=posStr;
    for(j=0;p<strlen(str);j++,p++){
            if(str[p]==' '){
            posStr=p;
            posStr++;
            p = lenght;
            matrix[i][j] ='\0';
            continue;
            }
            if(str[p]!=' ')matrix[i][j]=str[p];  //записываем в строку
        
    }
 
    
}
//Выводим собранное
for(int u=0;u<H;u++){
    for(int k=0;k<W;k++){
printf(" ");printf("%c",matrix[u][k]);
 
    }
printf("\n");
}
 
int mcount = 1000;   //максимальное кол-во в строке
int posMin = 0;      //позиция строки с минимальным кол-вом символов
 
//Еще самое короткое слова в матрице
for(i=0;i<H;i++){
    for(j=0;j<W;j++){
        if(matrix[i][j]!='\0'){
        count++;
        }
 
    }
 
if(count<=mcount){
mcount = count;       //получаем максимальное кол-во
posMin = i;
}
count = 0;
}
//выводим строку через матрицу
for(int r = 0;r<W;r++)
printf("%c",matrix[posMin][r]);
 
}
Добавлено через 13 минут
Длинна одного слова не должна превышать 10, количество слов не более 10
Если хочешь по другому по меняй размеры матрицы.
Yandex
Объявления
26.01.2010, 11:52     Строка
Ответ Создать тему
Опции темы

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