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

Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 - C++

Восстановить пароль Регистрация
 
TambowsWolf
0 / 0 / 0
Регистрация: 09.07.2011
Сообщений: 19
10.07.2011, 15:04     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #1
Нужно написать и протестировать функцию STRS(str1, str2), которая определяет, встретился ли в строке str1 какой-нибудь символ из строки str2. на языке СИ. Буду очень благодарен!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.07.2011, 15:04     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2
Посмотрите здесь:

Заменить в строке все вхождения подстроки str1 на подстроку str2 C++
C++ Написать програму которая заменяет все Enter и Tab в строке str1 на сымволи '\n' и '\t' в строке str2.
Заменить в строке все вхождения подстроки str1 на подстроку str2 C++
C++ Функция: проверить, является ли строка str1 подстрокой строки str2
C++ Функцию, которая получает два параметра str1 и str2 типа string и возвращает позицию начала последнего появления str2 в str1
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
10.07.2011, 15:57     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
bool findchar(char *s,char c)
{
    int i=0;
    for (;s[i]!='\0';i++)
        if (s[i]==c) return true;
    return false;
}
bool STRS(char *str1,char *str2)
{
    int i=0;
    for (;str2[i]='\0';i++)
        if (findchar(str1,str2[i])) return true;
    return false;
}
Добавлено через 2 минуты
сорри ошибся надо было писать int а не bool
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int findchar(char *s,char c)
{
    int i=0;
    for (;s[i]!='\0';i++)
        if (s[i]==c) return 1;
    return 0;
}
int STRS(char *str1,char *str2)
{
    int i=0;
    for (;str2[i]='\0';i++)
        if (findchar(str1,str2[i])) return 1;
    return 0;
}
TambowsWolf
0 / 0 / 0
Регистрация: 09.07.2011
Сообщений: 19
10.07.2011, 16:31  [ТС]     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #3
При компилировании ошибок не выдает, а вот при запуске выкидывает ошибки:

Linking...
.\Debug\Cpp1.obj : warning LNK4042: object specified more than once; extras ignored
LIBCD.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
Debug/Cpp1.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

Cpp1.exe - 2 error(s), 1 warning(s)
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
10.07.2011, 16:35     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #4
А где у тебя главная функция?
TambowsWolf
0 / 0 / 0
Регистрация: 09.07.2011
Сообщений: 19
10.07.2011, 16:38  [ТС]     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #5
Я не могу разобраться. Может возможен другой вариант решения на СИ?
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
10.07.2011, 16:42     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #6
Цитата Сообщение от TambowsWolf Посмотреть сообщение
Я не могу разобраться. Может возможен другой вариант решения на СИ?
1. Открой любую книжку по С++ и посмотри как пишется HelloWorld
2. Правильно создай проект в своей среде. Это должен быть консольный пустой проект
3. Введи весь текст ручками вместе с main()
4. Теперь можно транслировать и запускать.
TambowsWolf
0 / 0 / 0
Регистрация: 09.07.2011
Сообщений: 19
10.07.2011, 16:48  [ТС]     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #7
Я не знаю строк. А задачу надо завтра уже сдать.
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
10.07.2011, 16:53     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #8
Цитата Сообщение от TambowsWolf Посмотреть сообщение
Я не знаю строк. А задачу надо завтра уже сдать.
Строки здесь абсолютно ни причем! Ты проект неправильно создаешь и функцию main не пишешь - тебе сообщения и выводятся об этом.
TambowsWolf
0 / 0 / 0
Регистрация: 09.07.2011
Сообщений: 19
10.07.2011, 16:59  [ТС]     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #9
Вожможно так:

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
//подключаем библиотеки
#include <stdio.h>          
#include <conio.h>
//значение постоянной
#define K 500
int STRP(char*,char*);
//объявляем главную функцию main()  
void main() 
{
   //объявляем переменные           
   char str1[K],str2[K];        
   int m;
   //вводим певую строку
   puts(" 1st str:");
   gets(str1);  
   //вводим вторую строку           
   puts(" \n2st str:");
   gets(str2);              
   m=STRP(str1,str2);
   if(m!=-1)
   //выводим текстовое сообщение
   printf("\n Simvoly sovpadayut : %d",m);  
      else printf("\n Ne sovpadauyt");
   _getch();
   printf("\n\n");
}
dr.curse
 Аватар для dr.curse
386 / 342 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
10.07.2011, 17:04     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #10
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int findchar(char *s,char c)
{
    int i=0;
    for (;s[i]!='\0';i++)
        if (s[i]==c) return 1;
    return 0;
}
int STRS(char *str1,char *str2)
{
    int i=0;
    for (;str2[i]='\0';i++)
        if (findchar(str1,str2[i])) return 1;
    return 0;
}
int main()
{
    int res=STRS("Hello World!","lr");
    if (res) printf("Odin simvol ili neskolko simvoli iz stroki str2 est v str1");
    else printf("Simvolov stroki str2 net v str1");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2011, 17:05     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2
Еще ссылки по теме:

C++ Заменить в строке все вхождения подстроки str1 на подстроку str2
Функция определяющая наличие символов строки str2 в строке str1 C++

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

Или воспользуйтесь поиском по форуму:
ValeryLaptev
Эксперт C++
1005 / 784 / 46
Регистрация: 30.04.2011
Сообщений: 1,595
10.07.2011, 17:05     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2 #11
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Похоже, что работаешь в Студии?
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
//подключаем библиотеки
#include <stdio.h>          
#include <conio.h>
//значение постоянной
#define K 500
int STRP(char*,char*);
//объявляем главную функцию main()  
int main()            // -- надо так --  
{ setlocale(LC_ALL, "Russian");                  // -- для русского языка --
   //объявляем переменные           
   char str1[K],str2[K];        
   int m;
   //вводим певую строку
   puts(" 1st str:");   gets(str1); 
   //вводим вторую строку           
   puts(" \n2st str:");   gets(str2);               
   m=STRP(str1,str2);
   if(m!=-1)
   //выводим текстовое сообщение
     printf("\n Simvoly sovpadayut : %d",m);  
   else printf("\n Ne sovpadauyt");
   _getch();
   printf("\n\n");
}
А где определение функции STRP() ?
Yandex
Объявления
10.07.2011, 17:05     Определить, встретился ли в строке str1 какой-нибудь символ из строки str2
Ответ Создать тему
Опции темы

Текущее время: 23:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru