题目描述
对于每个输入的字典先进行排序,对于输入的单词按字符序排序,字典中的单词也按照字符序排序,两者比较
-
字符串比较函数strcmp按字典序比较两个字符串,并返回结果:如果两个字符串相等,则返回零;
-
字符串复制函数strcpy则是将源字符串变量的内容复制到目标字符串变量中
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
char word[105][15];
int main(){
int num=0;
char str[15],temp[15];
while(true){
cin>>word[num];
if(strcmp(word[num++],"XXXXXX")==0)
break;
}
for(int i=0;i<num-1;i++)
for(int j=i+1;j<num-1;j++)
if(strcmp(word[i],word[j])>0)
{
strcpy(str,word[i]);
strcpy(word[i],word[j]);
strcpy(word[j],str);
}
while(true){
cin>>str;
if(strcmp(str,"XXXXXX")==0)
break;
int flag=0;
sort(str,str+strlen(str));
for(int i=0;i<num-1;i++){
strcpy(temp,word[i]);
sort(temp,temp+strlen(temp));
if(strcmp(temp,str)==0){
cout<<word[i]<<endl;
flag=1;
}
}
if(!flag)
cout<<"NOT A VALID WORD"<<endl;
cout<<"******"<<endl;
}
}