/*==================================================
单词倒排
总时间限制: 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. 数据库添加数据I

    /*insert.php*/ <html> <head> <meta http-equiv="Content-Type" content=" ...

  2. Swift编程规范

    文档编号: 应用开发Swift编码规范 (版本v1.0.0)       成文信息 主题词: Swift开发编码规范 作  者: 周少停 文档类别: 开发规范 审  核: 批  准: 文档性质: 初稿 ...

  3. 待研究之iOS硬件调研

    1.磁力计 完成指南针 参考类:CLLocationManager,CLHeading 2.照相机 完成一个按钮点击拍照,拍照完使用照片,一个按钮打开系统相册 选择图片 参考类: UIImagePic ...

  4. codeforces 597C (树状数组+DP)

    题目链接:http://codeforces.com/contest/597/problem/C 思路:dp[i][j]表示长度为i,以j结尾的上升子序列,则有dp[i][j]= ∑dp[i-1][k ...

  5. js动态设置窗体位置

    1设置登录框的js,动态设置高度等 <script> $(document).ready(function () { $() / + "px"); $("in ...

  6. BZOJ 3531(树链剖分+线段树)

    Problem 旅行 (BZOJ 3531) 题目大意 给定一颗树,树上的每个点有两个权值(x,y). 要求维护4种操作: 操作1:更改某个点的权值x. 操作2:更改某个点的权值y. 操作3:求a-- ...

  7. HDU 1622

    http://acm.hdu.edu.cn/showproblem.php?pid=1622 白书上6.3.2二叉树层次遍历的例题,层次遍历用bfs,建立二叉树,很基础的题目 #include < ...

  8. CSS 实现:checkbox

    <div class="wrap"> <label>性别:</label> <div class="cb-wrap"& ...

  9. fn

    var avalon = function (el) { return new avalon.init(el) } avalon.init = function (el) { this[0] = th ...

  10. xp 共享 guest

    一.首先启用guest来宾帐户 二.控制面板→管理工具→本地安全策略→本地策略→用户权利指派里,“从网络访问此计算机”中加入guest帐户,而“拒绝从网络访问这台计算机”中删除guest帐户: 三.我 ...