给定一个字符串 S,返回 “反转后的” 字符串,其中不是字母的字符都保留在原地,而所有字母的位置发生反转。
如下实例示例:
输入:"ab-cd"
输出:"dc-ba"
#include#include void main(){ char str[128],ch; int len,i,j; printf("Please input a string:"); gets(str); len=strlen(str); for(i=0,j=len-1;i ='a'&&str[i]<='z'||str[i]>='A'&&str[i]<='Z')) i++; while(!(str[j]>='a'&&str[j]<='z'||str[j]>='A'&&str[j]<='Z')) j--; ch=str[i]; str[i]=str[j]; str[j]=ch; } printf("Result is:%s",str); }
该题的思路和带空格的回文字符串判断思路相同,都是从字符串两端向中心靠拢,遇到满足条件的字符再做出相应的处理即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)