Exe5 实现字符串中个单词的翻转——其中单词以空格、',' 、'.' 分隔开来
来源:互联网 发布:中文版线路板设计软件 编辑:程序博客网 时间:2024/04/24 15:52
#include <iostream>
using namespace std;
//RecStr_1(char* src)是先将每个单词进行翻转,然后进行全局翻转
void RecStr_1(char* src)
{
char* start=src,*end = src,*ptr = src;
while(*ptr++!='/0') //遍历字符串,将每个单词翻转
{
if(*ptr==' '||*ptr=='/0'||*ptr=='.'||*ptr==',') //找到一个单词
{
end = ptr-1; //end指向了单词尾部
while(start<end) //将单词字母逆置
swap(*start++,*end--);
start = end = ptr+1; //指向下一个单词开头
}
}
start = src;
end = ptr-2;
while(start<end) //整个字符串翻转
swap(*start++,*end--);
}
//RecStr_2(char* src)是先进行全局翻转,然后进行每个单词的翻转
void RecStr_2(char* src)
{
char* ptr = src, *start = src,*end = src;
while(*ptr++!='/0');
end = ptr-2; //将end指针指向了字符串的末尾
while(start<end) //先将整个的字符串进行了翻转
swap(*start++,*end--);
start = src;
// end = ptr-2;
ptr = start;
while(*ptr++!='/0')
{
if(*ptr==' '||*ptr=='/0'||*ptr=='.'||*ptr==',')
{
end = ptr-1; //end指向了单词尾部
while(start<end)
swap(*start++,*end--);
start = end = ptr+1; //指向下一个单词开头
}
}
}
int main()
{
char src[100];
cout<<"input:"<<endl;
gets(src);
// RecStr_1(src);
RecStr_2(src);
cout<<src<<endl;
return 0;
}
- Exe5 实现字符串中个单词的翻转——其中单词以空格、',' 、'.' 分隔开来
- 有一行字符,统计其中的单词个数(单词之间以空格分隔),并将每一个单词的第一个字母改为大写。
- 有一行字符,统计其中的单词个数(单词之间以空格分隔),并将每一个单词的第一个字母改为大写
- 用一个函数实现将一行字符串中最短的单词输出。此行字符串从主函数传递给该函数。假设字符串中包含的单词以空格作为分隔符号,例如”Asia Games 2010 is held in GuangZhou.”,其中最短的单词是”is”和”in”。
- 字符串中单词翻转实现
- 实现以单词为单位的翻转字符串
- 字符串中单词的翻转
- 1——计算字符串最后一个单词的长度,单词以空格隔开
- LeetCode2—String字符串中单词翻转
- 以单词为单位的翻转字符串
- 以单词为单位的翻转字符串
- 输入一行字符,统计其中有多少个单词,单词之间用空格分隔
- C语言 已知的字符串中找最长单词,假定字符串中只含字母和空格,空格用来分隔不同单词。
- 输入一行字符,统计其中的单词的个数.各单词之间用空格分隔
- java实现 计算字符串最后一个单词的长度,单词以空格隔开。
- 实现字符串中各单词翻转
- 编程实现字符串中各单词的翻转
- 字符串中单词的交换与单词翻转(一)
- 解决删除U盘时无法停止“通用卷”设备的方法
- QuickReport基本知识(转)
- 【20100122】整理DOTNET代码生成器 [转]
- cxGrid:隐藏FilterBox
- 2009 年终盘点
- Exe5 实现字符串中个单词的翻转——其中单词以空格、',' 、'.' 分隔开来
- 关于取得enctype="multipart/form-data"表单值的问题
- ashx中使用Session
- HashMap 遍历
- gzip: unknown suffix -- ignored
- 《咖啡》读后感
- 软件项目需求调研中的5W+1H定律案例分析
- 山东经济学院数字媒体兴趣团队章程
- ASP.NET MVC URL 路由简介