/*==================================================
单词倒排
总时间限制: 1000ms 内存限制: 65536kB
描述
编写程序,读入一段英文(英文中不包含标点),
将所有单词的顺序倒排并输出,其中单词以空格分隔。 输入
输入为一个字符串(字符串长度最大为100)
输出
输出为按要求排续后的字符串
样例输入
I am a student
样例输出
student a am I 注:这个代码是覃宗华写的。
====================================================*/
 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
char a[] = {};
int n, i, j;
freopen("5.in","r",stdin);
while(gets(a))
{
n = strlen(a);
for(i=n-;i>=;i--)
{
if(a[i]==' ')
{
for(j=i+;a[j]!=' '&&a[j]!='\0';j++)
cout<< a[j];
cout<<" ";
}
}
for(i=;a[i]!=' '&&a[i]!='\0';i++)
cout<<a[i];
cout << endl;
}
return ;
}
 #include<stdio.h>
#include<string.h>
int main()
{
char a[],temp,b[];//a数组存贮整个句子,b存储某一个单词
int i,len,j,k;
gets(a);
len=strlen(a);
for(i=;i<len/;i++)//对整个字符串进行翻转
{
temp=a[i];
a[i]=a[len--i];
a[len--i]=temp;
}
//printf("\n%s\n",a);
i=;
j=;
while(a[i]!='\0')
{
if(a[i]!=' ')
{//扫描句子,遇到非空格字符则存到b数组
b[j]=a[i];
j++;
}
else
{//扫描句子时遇到空格,逆向输出b数组存贮的那个被逆序的单词
for(k=j-;k>=;k--)
{
printf("%c",b[k]);
}
printf(" ");
j=;
}
i++;
}/**/
for(k=j-;k>=;k--)//最后一个单词需要单独处理
{
printf("%c",b[k]);
}
printf("\n");
return ;
}

OpenJudge计算概论-单词倒排【把句子内单词的顺序翻转】的更多相关文章

  1. AC日记——单词倒排 1.7 28

    28:单词倒排 总时间限制:  1000ms 内存限制:  65536kB 描述 编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔. 输 ...

  2. OpenJudge计算概论-取石子游戏

    OpenJudge计算概论-取石子游戏[函数递归练习] /*====================================================================== ...

  3. Openjudge-计算概论(A)-单词倒排

    描述: 编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔. 输入输入为一个字符串(字符串长度至多为100).输出输出为按要求排续后的字符 ...

  4. OpenJudge计算概论-单词排序

    /*===================================== 单词排序 总时间限制:1000ms 内存限制: 65536kB 描述 输入一行单词序列,相邻单词之间由1个或多个空格间隔 ...

  5. OpenJudge计算概论-最长单词2

    /*======================================================================== 最长单词2 总时间限制: 1000ms 内存限制: ...

  6. 35:字符串单词倒排 ReverseWords

    题目描述:对字符串中的所有单词进行倒排. 说明: 1.每个单词是以26个大写或小写英文字母构成: 2.非构成单词的字符均视为单词间隔符: 3.要求倒排后的单词间隔符以一个空格表示:如果原字符串中相邻单 ...

  7. OJ_单词倒排

    题目描述:对字符串中的所有单词进行倒排. 说明: 1.每个单词是以26个大写或小写英文字母构成,可以用一个“-”中连接线连接单词两部分表示一个单词,但是仅限一个“-”,出现两个“--”则为非构成单词的 ...

  8. Openjudge计算概论——数组逆序重放【递归练习】

    /*===================================== 数组逆序重放 总时间限制:1000ms 内存限制:65536kB 描述 将一个数组中的值按逆序重新存放. 例如,原来的顺 ...

  9. OpenJudge计算概论-计算书费

    /*============================================== 计算书费 总时间限制: 1000ms 内存限制: 65536kB 描述 下面是一个图书的单价表: 计算 ...

随机推荐

  1. 安装VMware Tools找不到内核头文件

    http://blog.csdn.net/bobbat/article/details/38568885 安装VMware Tools,解决无法找到kernel header path的问题 安装 V ...

  2. Interview----判断两个链表是否相交?

    题目描述: 判断两个单链表是否相交?假设链表没有环. 假如链表有环呢? 1.  假如没有环 那么如果两个链表相交的话,必然最后的节点一定是同一个节点.所以只需要各自扫描一遍链表,找到最后一个节点,比较 ...

  3. Python 的property的实现 .

    描述符.就是 将某种特殊类型①的类的实例指派给另一个类的属性 ①只要实现一下三种方法的其中一个就是特殊类型. __get__(self,instance,owner) -用于访问属性,他返回属性的值. ...

  4. HTML中的边框属性

    可以通过边框风格属性border-style设定上下左右边框的风格,该属性用于设置一个元素边框的样式,而且必须用于指定可见的边框.可以使用1到4个关键字,如果四个值都给出了,它们分别用于上.右.下和左 ...

  5. python类的定义和使用

    python中类的声明使用关键词class,可以提供一个可选的父类或者说基类,如果没有合适的基类,那就用object作为基类. 定义格式: class 类名(object): "类的说明文档 ...

  6. Objective-C determine data network type of the iOS device

    Im on an application that receive data from server, the problem is when user connect to cellular dat ...

  7. "由于这台计算机没有远程桌面客户端访问许可证,远程会话被中断"的解决方案

    先使用如下命令登录到服务器: mstsc /v:{服务器IP} /admin 然后再使用下列方法之一即可. 方法一: 1.单击“开始→运行”,输入“gpedit.msc”打开组策略编辑器窗口,依次定位 ...

  8. Js验证userAgent是否来自手机端

    function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=([^&] ...

  9. windows服务创建与管理

    安装windows 服务 C:\Users\chensimin>cd \ C:\>cd C:\Windows\Microsoft.NET\Framework\v4.0.30319 C:\W ...

  10. D - 排列

    #include<cstdio> #include<algorithm> #include<string.h> using namespace std; #defi ...