C++ 判断字符串是否为回文的函数,要求滤去所有非字母字符,不考虑字母的大小写。如 Madam,I✀m adam是回文

2025-03-19 22:15:17
推荐回答(2个)
回答1:

这个函数应该完成:取出所有字符并把大写改成小写
char* newstring(char ns[size]){
int k,i,j;
char news[size];
j=0;
k=strlen(ns);
for(i=0;i<=k;i++)
{
if(ns[i]>='a'&&ns[i]<='z')
{ news[j]=ns[i];j++; cout< }
else if(ns[i]>='A'&&ns[i]<='Z')
{ news[j]=ns[i]+32;j++;
cout< }
}
news[j]='\0';
return news;
}
int main(){
char carray[SIZE],news[size];
int j,len,is_palindrome=1;
cout<<"输入数组"< cin.get(carray,SIZE);
strcpy(news,newstring(carray));
len=strlen(news);
for(j=0;j if(news[j]!=news[len-1-j]){
is_palindrome=0;
break;
}
}
if(is_palindrome) cout<<"是回文"< else cout<<"不是回文"< return 0;
}

回答2:

C语言程序编辑.如何编辑一程序在主函数中用字符指针的方法判断输入字符串是否BOOL hwstr(char *str) { char *pstrstar=str; char *pstrend=str strlen