Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/40: Рейтинг темы: голосов - 40, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 03.04.2013
Сообщений: 81
1

Максимальная длина строки

06.04.2015, 20:50. Показов 7728. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Можете объяснить почему, когда я добавил цикл do while он первую строку пропускает и считает ее длину ноль ?
Он просто не считает ее. Если я ввожу кол-во строк 3 например, то первую он выведет пустую, потом следующие две, а при записи третью не дает ввести, так как выводит уже, что типо первую я ввел как пустую. Если цикл уберу все нормально, но тогда в for циклах нужно указать условие до i<A и если опять же нужно ввести только три строки, то две остальные придется пустыми прощелкать, но так не нужно


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
#include "stdafx.h"
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <clocale>
#include<cstring>
#define A 5        // макс кол-во строк
#define B 50      // макс кол-во символов
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    char str[A][B], s[B];
    int i, j, a, b, ind, k;
    cout << "Введите кол-во строк, которое вы собираетесь написать: ";
    do
    {
        cin >> k;
        if (k < A) break;
        else cout << "Кол-во строк не должно превышать 5-ти. Повторите попытку\n";
    } while (k > A);
 
 
    cout << "Введите строки(кол-во символов должно быть меньше 50):\n";
    for (i = 0; i < k; i++)
    
        gets_s(str[i]);
    
 
    cout << "Вы ввели:" << endl;
 
    for (j = 0; j < k; j++)
        cout << str[j] << endl;
 
    for (i = 0; i < k; i++)
        cout << "Длина " << i + 1 << " строки равна: " << strlen(str[i]) << endl;
 
    ind = 0;
 
    for (i = 1; i < k; i++)
    {
    {
        if (strlen(str[i]) > strlen(str[ind]))
            ind = i;
    }
 
    strcpy_s(s, str[ind]);//помещаем в строку s строку макс длины
    }
        cout << "Строка " << ind + 1 << " имеет максимальную длину\n";
        
        
    system("pause");
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2015, 20:50
Ответы с готовыми решениями:

появилась загвоздка с функцией. нужно вывести на экран строку, сост. из звездочек. Длина строки-параметр функциииз звезд. длина строки -
Я видела, что на форуме есть подобные задачи, но ни одно из их решений не работает на моем dev...

Максимальная длина целочисленного типа
Максимальная длина __int64 - 18.446.744.073.709.552.046 Максимальная длина __int128 -...

Какова максимальная длина названия функции
я привык все функции называть по смыслу,но вот услышал мнение о том, что это слишком и надо короче...

Удалить из строки числа кратные 2, если длина строки кратна 2
#include &lt;iostream&gt; #include &lt;string&gt; #include &lt;conio.h&gt; using namespace std; int main(int...

1
Модератор
Эксперт С++
13690 / 10895 / 6470
Регистрация: 18.12.2011
Сообщений: 29,077
06.04.2015, 21:06 2
C++
1
2
3
4
5
6
 do
    {
        (cin >> k).get();
        if (k < A) break;
        else cout << "Кол-во строк не должно превышать 5-ти. Повторите попытку\n";
    } while (k > A);
см. Распространенные ошибки
0
06.04.2015, 21:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2015, 21:06
Помогаю со студенческими работами здесь

Если длина введенной строки кратна 4, первую часть строки поменять местами со второй
Если длина введенной строки кратна 4, первую часть строки поменять местами со второй.

Удалить из строки среднюю букву, если длина строки нечётная или две средних в противном случае
Строки. Дана строка S. Удалите из неё среднюю букву, если длина строки нечётная или две средних в...

Вывести номер строки в массиве, сумма чисел которой максимальная
Пользователь вводит элементы двумерного массива. Необходимо вывести номер строки, сумма элементов...

длина строки
Определить длинну строки, которая введена пользователем.


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

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