社区
新手乐园
帖子详情
请教个字符串问题
xiamihouwei
2007-04-03 05:04:37
我欲将"I like to go to shool"-------->"shool to go to like I"希望帮忙前辈帮帮忙。
...全文
202
11
打赏
收藏
请教个字符串问题
我欲将"I like to go to shool"-------->"shool to go to like I"希望帮忙前辈帮帮忙。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiamihouwei
2007-04-03
打赏
举报
回复
#include "stdio.h"
#define MAX_N 100
char *fun(char *pString)
{ int cnt,num= 0;
char *temp,*pSpace,*space=" ";
char cBuff[20][16],LastChar;
temp=pString;
LastChar=*(temp+strlen(temp)-1);
while(*temp!='\0')
{
pSpace=strchr(temp ,' ');
if(pSpace!=NULL)
{
strncpy(cBuff[num++],temp, strlen(temp)-strlen(pSpace));
pSpace++;
temp=pSpace;
}
else if(LastChar<'z'&&LastChar>'a'||LastChar<'Z'&&LastChar>'A')
{
strncpy(cBuff[num],temp,strlen(temp));
break;
}
else
{
strncpy(cBuff[num],temp,strlen(temp)-1);
strcpy(cBuff[num+1],temp+strlen(temp)-1);
break;
}
}
memset(pString, 0, strlen(pString));
for(cnt=num;cnt>=0;cnt--)
{
if(cnt!=0)
{
strcat(pString,cBuff[cnt]);
strcat(pString,space);
}
else
{ strcat(pString,cBuff[cnt]);
strcat(pString,cBuff[num+1]);
}
}
return pString;
}
main()
{
char *pString=(char*)malloc(sizeof(char)*MAX_N);
char *achar=NULL;
gets(pString);
achar= fun(pString);
puts(achar);
}
我最后的版本谢谢大家支持!
xiamihouwei
2007-04-03
打赏
举报
回复
谢谢你 请问下用STRTOK怎么省代码。
samio_520
2007-04-03
打赏
举报
回复
不过他的函数里好像有BUG哦
samio_520
2007-04-03
打赏
举报
回复
哦,是有这么个函数strtok,要省掉我好多代码啊,呵呵
samio_520
2007-04-03
打赏
举报
回复
将空格间的子串提取出来放到一个指针数组中,再反向输出指针数组中的内容即可
#include <stdio.h>
#include <string.h>
#define MAX_LEN 256
void RevStr(char * Source)
{
char *SrTemp; //输入参数的备份指针
char *pEnd; //无限循环的中断标志指针
char *cBuff[MAX_LEN]; //提取出来的子串存放地
int cnt = 0; //循环变量
int Num = 0; //记录子串个数
//初始化
for(cnt; cnt < MAX_LEN; cnt++)
{
cBuff[cnt] = NULL;
}
SrTemp = Source;
while(1)
{
pEnd = strstr(SrTemp, " ");//返回第一次出现空格时的指针pEnd
if(0 == pEnd)
{
break; //没有空格时,结束循环
}
//动态分配指针数组
cBuff[Num] = (char*)malloc(strlen(SrTemp) - strlen(pEnd) + 1);
//提取子串
strncpy(cBuff[Num++], SrTemp, strlen(SrTemp) - strlen(pEnd));
while(' ' == *pEnd)
{
pEnd++; //将当前指针移到非空格的字符前
}
SrTemp = pEnd; //继续循环
}
for(cnt = Num - 1; cnt >= 0; cnt--)
{
//反向输入到Source中
memset(Source, 0, strlen(Source));
strcat(Source, cBuff[cnt]);
//释放指针
free(cBuff[cnt]);
cBuff[cnt] = NULL;
}
return;
}
xiamihouwei
2007-04-03
打赏
举报
回复
strchr也可以替换strtok吧!很感谢你!
xiamihouwei
2007-04-03
打赏
举报
回复
这样做把原来的空格给没了
Mypiger
2007-04-03
打赏
举报
回复
char strTmp[32],strTmp1[8][16],*token = NULL,seps[] = " ";
int j = 0;
strcpy( strTmp, "I like to go to shool" );
token = strtok( strTmp, seps );
while( token != NULL )
{
strcpy( strTmp1[j], token );
token = strtok( NULL, seps );
j++;
}
//显示
for( int i=j-1; i>0; i-- )
printf( "%s ", strTmp1[i]);
getchar();
不好似strTmp越界了!改成32位
Mypiger
2007-04-03
打赏
举报
回复
char strTmp[16],strTmp1[8][16],*token = NULL,seps[] = " ";
int j = 0;
strcpy( strTmp, "I like to go to shool" );
token = strtok( strTmp, seps );
while( token != NULL )
{
strcpy( strTmp1[j], token );
token = strtok( NULL, seps );
j++;
}
//显示
for( int i=j-1; i>0; i-- )
printf( "%s ", strTmp1[i]);
getchar();
return;
hellox
2007-04-03
打赏
举报
回复
别忘了#include<algorithm>
hellox
2007-04-03
打赏
举报
回复
reverse
请教
一个正则表达式,匹配所有Html标签外部的指定
字符串
请教
一个正则表达式,匹配所有Html标签外部的指定
字符串
一个牛人提供的GIS源码(很好)
获取
字符串
中的指定位置的子
字符串
http://www.cnblogs.com/Tangf/archive/2006/03/25/358311.html 做了个界面,请大家PP http://www.cnblogs.com/Tangf/archive/2006/03/16/351640.html [存点资料]车载导航电子地图...
(
字符串
)- 判断 一个
字符串
是否是另一个
字符串
的子序列
题目描述 小z玩腻了迷宫游戏,于是他找到了Easy,准备...现在小z想
请教
Easy老师,M个小
字符串
中有多少个小
字符串
是大
字符串
S的子序列? 如果Easy老师答不上来就要请客,现在Easy老师很苦恼,你能帮帮他吗? 子序列可以理...
c语言怎么给多个
字符串
排序,
请教
多个
字符串
排序(不用数组)
该楼层疑似违规已被系统折叠隐藏此楼查看此楼#include#includestructstud{char*pp;intsum;structstud*next;};structstud*creat1(intn){structstud*head,*newer,*p1,*p2;...printf("输入
字符串
:");newer=(s...
c语言递归将
字符串
abcde倒序输出,
请教
C语言
字符串
倒序输出
满意答案bwrgqefgg推荐于 2017.10.03采纳率:55%等级:10已帮助:2169人#... //用于存放输入的
字符串
char string2[200]; //用于存放倒序后的
字符串
int invertion(char *ch1, char *ch2); //声明函数printf("Please...
新手乐园
33,311
社区成员
41,784
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章