单词翻转
来源:互联网 发布:延庆网络招聘 编辑:程序博客网 时间:2024/05/16 08:03
Description
输入一个句子(一行),将句子中的每一个单词翻转后输出
Input
输入有多行,每行不超过500个字符。单词之间以空格、逗号、双引号、分号、句号隔开。
Output
翻转每一个单词后的字符串
Sample Input
hello worldab cd ef
Sample Output
olleh dlrow ba dc fe
HINT
//自己的代码
#include<stdio.h>#include<string.h>int main(){char a[1000],d[100][100],w;int i,m,n,t,j;while(gets(a)){m=0;n=0; for(i=0;a[i];i++){if(a[i]==' '||a[i]==','||a[i]=='.'||a[i]=='""'||a[i]==';'){d[m][n++]='\0';m++;n=0;}elsed[m][n++]=a[i];} d[m++][n]='\0';for(i=0;i<m;i++){ t=strlen(d[i]); if(t==0) continue;//必须有否则出现Presentation Error,会出现多余的空格 for(j=0;j<t/2;j++) { w=d[i][j]; d[i][j]=d[i][t-1-j] ; d[i][t-1-j]=w; } printf("%s ",d[i]);}printf("\n");}return 0;}
首先介绍一下reverse()函数
reverse函数的作用是:反转一个容器内元素的顺序。函数参数:reverse(first,last);//first为容器的首迭代器,last为容器的末迭代器。它没有任何返回值。
这个函数比较简单,看一个例题:输入一个字符串,输出反转后的字符串。
直接调用函数。
代码:
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
}
#include<iostream>#include<stdio.h>#include<string.h>#include<string>#include<algorithm>using namespace std ;int main() { char s[1000] ; while(gets(s)) { string str[500] ; char *p = NULL ; int count = 0 ; for(p = strtok(s," \",;.") ; p ; p = strtok(NULL," \",;."))//单词之间以空格、逗号、双引号(\")、分号、句号隔开。 str[count++] = p ;//将每个单词存放到字符串数组str中 for(int i = 0 ; i < count ; i++) { reverse(str[i].begin(),str[i].end()) ;//反转 cout << str[i] << " " ; } cout << endl ; } return 0 ;}
0 0
- 单词翻转
- 单词翻转
- 单词翻转
- 翻转单词
- 单词翻转
- 翻转单词
- 单词翻转
- 单词翻转
- 单词翻转
- 单词翻转
- 单词翻转
- 单词翻转
- 单词翻转
- 翻转单词
- 单词翻转
- 单词翻转
- 单词翻转
- 单词翻转
- C# linq 书写语法
- HDU 4707 Pet (DFS)
- Web前端面试问题汇总
- 【MFC】WinExec函数——常用于查看帮助文档
- 2014区域赛北京站总结
- 单词翻转
- 图片像幻灯片一样切换
- 行人检测(Pedestrian Detection)资源
- 周记篇---第一周
- WPF调试
- c++ 32 继承 4
- Delphi XE7的安卓程序如何调用JAVA的JAR,使用JAVA的类?
- Tachyon学习及源码阅读:简介
- ORA-01591 锁被未决分布式事务处理