PAT(乙级)1009. 说反话
2016-06-23 19:55
267 查看
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
输出样例:
Come I Here World Hello
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char inStr[90];
char outStr[90][30];
int main()
{
gets(inStr);
int num=0;
int len=strlen(inStr);
int i,j;
for(i=0;i<len;i++){
if(inStr[i]==' '){
j=0;
num++;
continue;
}
outStr[num][j++]=inStr[i];
}
for (i = num; i > 0 ; i--)
{
printf("%s ", outStr[i]);
}
printf("%s\n", outStr[0]);
return 0;
}
分析:对于输入字符串根据空格将单词存入字符数组里,之后倒序输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char inStr[90];
char outStr[90][30];
int main()
{
gets(inStr);
int num=0;
int len=strlen(inStr);
int i,j;
for(i=0;i<len;i++){
if(inStr[i]==' '){
j=0;
num++;
continue;
}
outStr[num][j++]=inStr[i];
}
for (i = num; i > 0 ; i--)
{
printf("%s ", outStr[i]);
}
printf("%s\n", outStr[0]);
return 0;
}
分析:对于输入字符串根据空格将单词存入字符数组里,之后倒序输出。
相关文章推荐
- php 获取开始日期与结束日期之间所有日期
- C语言的指针、链表的原理和各类操作
- D. 反弹球游戏 几何水题 ,画出图就可AC
- springMVC 接受map参数的写法
- 文章标题
- 性能之js位置
- 服务器中的环境搭建
- C. 圆圈圈 几何水题
- 1.设计模式_简单工厂模式
- 【设计模式】前端控制器模式
- 酒店入住管理系统
- PAT(乙级)1008. 数组元素循环右移问题
- bzoj 2599(点分治)
- B.打击判定 几何水题
- 一次简单的面向对象抽象
- ACM/ICPC竞赛之STL简介
- MyEclipse中Source Folder,package,folder的区别
- servlet入门学习之API
- 关于: No Hibernate Session bound to thread, and configuration does not allow creation of non-transacti
- 必知必会sql SELECT语句