单词翻转字母顺序c语言,单词翻转(C语言实现)
题目:单词翻转。输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变,句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如,输入“I am a student.”,则输出“student. a am I”。
思路:先将整个句子翻转,然后再通过空格区分每个单词的范围,再将这个单词翻转。
#include
#include
#include
void RotateSentence(char *str, int from, int to);//翻转整个句子。1234=>4321
void RotateWord(char *str, int len);//翻转单词。word=>drow
void Rotate(char *str, int len);
int main()
{
int len;
char str[1000];
printf("input a string:\n");
gets_s(str, 1000);
len = strlen(str);
Rotate(str, len);
puts(str);
system("pause");
return 0;
}
void RotateSentence(char *str,int from,int to)
{
char temp;
while (from < to)
{
temp = str[from];
str[from++] = str[to];
str[to--] = temp;
}
}
void RotateWord(char *str, int len)
{
int i=0, j=0;
for (int k = 0; k < len; k++)
{
if (str[k] != ' ')
{
j++;
}
else
{
RotateSentence(str, i, j-1);
i = ++j;
}
}
}
void Rotate(char *str, int len)
{
RotateSentence(str, 0, len - 1);
RotateWord(str, len);
} 时间复杂度O(n),空间复杂度O(1)。
单词翻转字母顺序c语言,单词翻转(C语言实现)相关推荐
- 编写一个方法,将一段文本中的各个单词的字母顺序翻转题
编写一个方法,将一段文本中的各个单词的字母顺序翻转题 1.任务介绍 编写一个方法,将一段文本中的各个单词的字母顺序翻转, 例如:"I like writing code best" ...
- 将文本中的各个单词的字母顺序翻转(Java)
题目大意 编写一个方法,将一段文本中的各个单词的字母顺序翻转, 例如:"I like writing code best",将变成"I ekil gnitirw edoc ...
- python编程试题单词倒排_Python:将句子中的单词全部倒排过来,但单词的字母顺序不变...
早上看到好友未央的一篇博文<一道google的测试工程师笔试题>,内容如下: 这是去年面试google测试工程师的一道题,题目如下: 设计一个函数,使用任意语言,完成以下功能: 一个句子, ...
- 编程题50 习题6-8 单词首字母大写【浙大版《C语言程序设计(第4版)》题目集 详解教程】
编程题50 习题6-8 单词首字母大写[浙大版<C语言程序设计(第4版)>题目集 详解教程] 原题链接:习题6-8 单词首字母大写 (pintia.cn) 参考答案 #include< ...
- 7-30 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分)
7-30 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则 ...
- 7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出
7-1 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (15 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将 ...
- python中排序英文单词怎么写_Python 排序最长英文单词链(列表中前一个单词末字母是下一个单词的首字母)...
本文主要介绍排序最长的单词链的方法,列表中每个元素相当于一个单词,要实现列表中前一个单词末字母是下一个单词的首字母,并且这个链是最长的. 使用递归实现 words = ['giraffe', 'ele ...
- PTA(每日一题)7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出
现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. **注1:**单词之间以空格(1个或多个空格)为间隔. **注2 ...
- Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出
现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或 ...
最新文章
- Observer Pattern 观察者模式
- AI每日精选:新加坡批准AI血管超声扫描;蔚来硅谷裁员141人
- YOLOv5训练coco128数据集流程
- ICG游戏:尼姆游戏异或解法的证明
- js学习总结----柯里化函数
- MySQL修改,表结构大幅修改
- EF CodeFirst下的自动迁移
- 阿迪达斯asp.net sql购物商城计算机设计网站作品
- (xd mac直装版)支持m1完美支持m1完整详细教程
- android设置默认浏览器下载地址,android手机如何设置默认浏览器?
- mysql索引一般什么数据结构_mysql索引一般使用什么数据结构
- 19年12月六级翻译词汇
- 第十章《日期与时间》第6节:ZoneId、ZoneRegion和ZoneOffset
- OpenSolaris/Solaris中文FAQ
- kafka是什么?主要用在什么场景
- 如何高效进行出货复核作业,提升出货准确率?
- 一年成为Emacs高手(像神一样使用编辑器)
- sql注入学习笔记(4)--sqlmap注入心得
- Q-Learning 、Sarsa与 DQN算法
- 一个域名(二级域名)怎么绑定多个ip
热门文章
- 使用itext将HTML 生成PDF文件
- 基于CNN 对车牌数字进行识别,(二)
- 通过Word或WLW离线发布CSDN博客
- 肖维勒准则matlab_莱因达 ( PauTa)准则、格拉布斯 ( Grubbs)准则、肖维纳 (Chauvenet)准则 三者的区别...
- iPhone内存比Android手机小,iPhone内存为什么一直这么小
- 多级弹出菜单jQuery插件ZoneMenu
- CIDR表示IP地址
- matlab批量导入excel表格数据,matlab导入excel表格数据-如何用matlab读取多个excel表格数据,将每个表格数......
- VBS脚本实现宽带上网加网页认证上网双验证
- 【实习】ProcessOn文件导入/导出