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

Сравнение строк

07.02.2017, 23:06. Показов 1056. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <cstdlib>
#include <cstdio>
#include <cstring>
using namespace std;
int main(){
    char s1[10001],s2[10001];
    cin>>s1>>s2;
    if (s1==s2){cout<<-1;}
    else{cout<<max(strlen(s1),strlen(s2));}
    
    return 0;
}
при тесте
а
а
выдает 1 почему?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.02.2017, 23:06
Ответы с готовыми решениями:

Сравнение строк
MrGluck, не знаю: if ( strcmp( c1, c2 ) &lt; 0 ) // правильное сравнение printf( &quot;And it was...

Сравнение строк
Добрый вечер. Пользователь должен ввести слово которое находиться в инструкции if и ему должно...

Сравнение строк
Не прибегая к функциям сравнения строк, создайте программу, которая запрашивает у пользователя две...

Сравнение строк
Всем привет, имеется строка записаная в масив, как мне сравнить первую букву єтой строки с єтой...

5
296 / 125 / 106
Регистрация: 30.10.2015
Сообщений: 690
07.02.2017, 23:17 2
Лучший ответ Сообщение было отмечено IlushaMax как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <cstring>
#include <algorithm>
 
int main()
{
  std::string s1, s2;
 
  std::cin >> s1 >> s2;
  
  if (s1 == s2) 
    std::cout << -1 << std::endl;
  else 
    std::cout << std::max(s1.length(), s2.length()) << std::endl;
 
  return 0;
}
1
Вездепух
Эксперт CЭксперт С++
10825 / 5845 / 1586
Регистрация: 18.10.2014
Сообщений: 14,502
07.02.2017, 23:20 3
Цитата Сообщение от IlushaMax Посмотреть сообщение
выдает 1 почему?
Потому что условие s1==s2 не выполняется.
0
0 / 0 / 4
Регистрация: 09.04.2016
Сообщений: 128
07.02.2017, 23:52  [ТС] 4
TheCalligrapher, да, спасибо, очень помогло
0
1642 / 1091 / 487
Регистрация: 17.07.2012
Сообщений: 5,345
12.02.2017, 23:07 5
Цитата Сообщение от IlushaMax Посмотреть сообщение
C++
1
if (s1==s2){cout<<-1;}
Лучше использовать std::string как в посте выше, но если надо сишные строки сравнить, тогда правильно так
C++
1
if (strcmp(s1, s2) == 0)
Добавлено через 27 секунд

Не по теме:

Тоже на codeforces решаете? :D

1
0 / 0 / 4
Регистрация: 09.04.2016
Сообщений: 128
18.02.2017, 22:26  [ТС] 6
Новичок, хах, да, спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2017, 22:26
Помогаю со студенческими работами здесь

Сравнение строк
Здравствуйте. Есть 2 файла содержимое которых нужно сравнить и вывести на экран не совпадающие...

Сравнение строк
Доброго времени суток! Имеется задачка: для двух заданных строк символов вывести без повторений...

Сравнение 2-х строк S и s
Заданы две строки S и s. Определить, является ли строка s префиксом, суффиксом, и тем, и другим или...

Сравнение строк
Объясните пожалуйста по какому способу строки сравниваются? А то я сравнивал так и не понял в чем...


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

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

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