主题:c++程序设计
welsen
[专家分:0] 发布于 2010-12-19 12:24:00
逆序字符串。
问题表述:
输入一个字符串,将该字符串逆序输出,并判断是否回文(即逆序后的字符串是否与原输入的字符串相同)。
输入:一个字符串(可能包含空格),回车表示此次输入结束。输入-1时结束程序。
输出:输出逆序后的字符串,如果是回文,空格后输出YES,否则,空格后输出NO
输入样例:abc cba
输出:abc cba YES
回复列表 (共4个回复)
沙发
chenhui1111 [专家分:190] 发布于 2010-12-19 17:50:00
#include <stdio.h>
#include <string.h>
char temp[20];
void fs(char str[])
{
int len=strlen(str);
for(int i=0;i<len;i++)
{
temp[i]=str[len-i-1];
}
}
void main()
{
char str[20];
gets(str);
fs(str);
printf("%s ",temp);
if(strcmp(temp,str)==0)
printf("YES\n");
else
printf("NO\n");
}
板凳
welsen [专家分:0] 发布于 2010-12-19 19:08:00
谢谢。
可不可以在这个基础上让这个程序能无限次输入,当输入-1时,程序结束。
用c++编
3 楼
chenhui1111 [专家分:190] 发布于 2010-12-19 21:34:00
自己加个判断条件吧 总要自己做点东西
4 楼
zjhzcayqw [专家分:110] 发布于 2010-12-20 22:12:00
我觉得你要是先学C语言,在学C++的话,那么这道题目应该不是问题,要是直接学C++的话,那就有点困难了,其实输入多组数据,我也不是很会,用getline输入的话我总是会出现错误,第一组数据还好,到第二组就错了。
我来回复