【发布时间】:2014-04-27 08:59:08
【问题描述】:
我正在尝试用 c++ 编写一个程序来查找用户输入的 2 个句子中的共享字母,我输入的代码如下,但由于某种原因它不起作用,该函数必须返回所有共享字母之间的两句话。提前致谢!
#include<iostream>
#include<cstring>
using namespace std;
int findSharedLetters(const char line1[], const char line2[]);
void main()
{
char line1[100] , line2[100];
cout<<"Enter line 1 : ";
cin.getline(line1 , 100);
cout<<"Enter line 2 : ";
cin.getline(line2 , 100);
char result = findSharedLetters(line1,line2);
cout<<"shared letters : "<<result<<endl;
system("pause");
}
int findSharedLetters(const char line1[], const char line2[])
{
for(int i = 0;i<line1[100];i++)
{
for(int x = 0;x<line2[100];x++)
{
if(line1[i] == line2[x])
{
return line1[i];
}
}
}
}
【问题讨论】:
-
嗨,欢迎来到 StackOverflow。这不是它的工作方式,当你执行程序时会发生什么,你期待什么,为什么?你想得到多少个常用字母?你总是提供相同长度的句子吗?
-
句子最多可以有 100 个字符,用户可以对每个句子有不同的长度,我试图找到两个句子之间的所有常见字母。
-
@KareemYoussef 您的程序只能处理 99 个字符的句子。用排序语句测试你的程序:“a”和“a”,或“a”/“b”,然后稍长一些:“ab”/“ab”,“ab”/“ba”,“aaabccc”/“dddaeee " ...
标签: c++ arrays string function character