#include <iostream>
#include <string>
#include <algorithm>
#include <cstdlib>
#include <cstdio>
using namespace std;
static bool isanagram(string a, string b);
int main(void)
{
int i,n,j,s;
cin >> n;
string a, b;
cin >> a >> b;
if(!isanagram(a,b)) cout << "False" << endl;
else cout << "True" << endl;
return 0;
}
static bool isanagram(string a, string b)
{
int i, j, size, s=0;
size = a.size();
bool k;
for(i=0;i<size;i++)
{
k=false;
for(j=0;j<size;j++)
{
if(a[i] == b[j]) { k = true; break; }
}
if(k==true) s+=1;
}
cout << a[2] << b[2] << endl;
if(s == size) return true;
else return false;
}
我不知道問題到底在哪裏,所以我只是粘貼了整個代碼。布爾功能問題 - 總是返回true?
它應該是一個簡單的程序能夠找到兩個字符串是否是字謎,但它不工作,我不知道爲什麼。我在程序中使用了指針,所以認爲可能是問題,並刪除它們,我另外刪除了其他東西,但仍然無法正常工作。如果你可以給它一個看看,並告訴我一些想法,我可能會出錯我的代碼?
預先感謝您。
如果您接受的答案多於目前爲止的答案,人們可能會回答。 – Oded 2010-02-09 15:54:46
順便說一句,如果第二個字符串比第一個字符串短,您的代碼可能會崩潰。 – erelender 2010-02-09 15:57:44
這是一個數字,在你的情況下是0%,這意味着你沒有接受任何你以前所有問題的答案。 – 2010-02-09 15:58:25