|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ c语言求助,关于反序问题
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
732
人关注过本帖,
1
人收藏
标题:
c语言求助,关于反序问题
取消只看楼主
加入收藏
雨夜2133
等 级:
新手上路
帖 子:6
专家分:5
注 册:2011-7-11
楼主
收藏
(1)
问题点数:0 回复次数:3
c语言求助,关于反序问题
输入字符串str,倒叙输出str,注意支持中文,例如 “Tom吃西瓜” 输出 “瓜西吃moT”。
我能单独将汉字或者字母反序,但是放在一起就做不到了,是不是应该先判定是什么类型,在反序阿!但是应该怎么判定又不知道了,麻烦看到的支支招!谢了!!
搜索更多相关主题的帖子:
c语言
中文
吃西瓜
字符串
汉字
2011-07-11 16:05
举报帖子
使用道具
赠送鲜花
雨夜2133
等 级:
新手上路
帖 子:6
专家分:5
注 册:2011-7-11
第
2
楼
收藏
得分:0
thank
[
本帖最后由 雨夜2133 于 2011-7-12 16:16 编辑
]
2011-07-12 16:15
举报帖子
使用道具
赠送鲜花
雨夜2133
等 级:
新手上路
帖 子:6
专家分:5
注 册:2011-7-11
第
3
楼
收藏
得分:0
回复 2楼 laoyang103
谢谢啊!!!!
2011-07-12 16:15
举报帖子
使用道具
赠送鲜花
雨夜2133
等 级:
新手上路
帖 子:6
专家分:5
注 册:2011-7-11
第
4
楼
收藏
得分:0
我发现一种很简单的方法,就是开始就将他们反序,然后再来将其中的汉字部分做变化,因为反过顺序后,汉字变成其他的字,只要把他们变回来就行了!!
#include<stdio.h>
void main()
{
char s[80];
int i,t,n=0,temp;
gets(s);
while(s[n]!='\0')
n++;
for(i=0;i<n/2;i++)
{
t=s[i];//将字符串反序
s[i]=s[n-i-1];
s[n-i-1]=t;
}
i=0;
while(i<n)
{
if(s[i]>128||s[i]<0)//判断是否是汉字
{
temp=s[i];//将汉字变为原来的字
s[i]=s[i+1];
s[i+1]=temp;
i=i+2;//汉字占两个字符,所以加2.
}
else
i++;
}
puts(s);
}
[
本帖最后由 雨夜2133 于 2011-7-12 17:30 编辑
]
2011-07-12 17:28
举报帖子
使用道具
赠送鲜花
4
1/1页
1
快速回复:
c语言求助,关于反序问题
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.025646 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved