Programming Ability Test学习 1009. 说反话 (20)
2015-09-01 16:14
363 查看
1009. 说反话 (20)
时间限制400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。
输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。
输出格式:每个测试用例的输出占一行,输出倒序后的句子。
输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello
提交代码
注:用链表头插法实现
#include<iostream> #include<cstdio> #include<cmath> #include<cstdlib> #include<cstring> #include<string> #include<algorithm> #define MAXSIZE 100005 using namespace std; //结点结构 typedef struct Node { char s[100]; struct Node *Next; }node; //链表结构,每条链表有一个头结点和一个尾结点 typedef struct Link { node *head; }link; //创建一个新链表 link *CreateNewLink(link *tLink) { tLink->head=(node*)malloc(sizeof(node)); tLink->head->Next=NULL; return tLink; } //输入s,生成链表,头插法 void putNewLink(link *tLink,char *s) { node *newPoint=(node*)malloc(sizeof(node)); strcpy(newPoint->s,s); newPoint->Next=tLink->head->Next; tLink->head->Next=newPoint; } //直接头结点后一个结点开始遍历即可,顺序已反 void ReadLink(link *tLink) { node* pthis=tLink->head->Next; while(pthis!=NULL) { cout<<pthis->s; if(pthis->Next==NULL)cout<<endl; else cout<<" "; pthis=pthis->Next; } } int main() { link *newLink=(link*)malloc(sizeof(link)); newLink=CreateNewLink(newLink); char s[MAXSIZE]; char ss[100]; memset(s,0,sizeof(s)); memset(ss,0,sizeof(ss)); gets(s); int i=0,j=0; while(s[i]!='\0'&&s[i]!=' ') { ss[j++]=s[i]; //遇到空格 if(s[i+1]==' '&&s[i+2]!=' '){ putNewLink(newLink,ss); memset(ss,0,sizeof(ss)); j=0; i+=2; } //遇到串尾 else if(s[i+1]=='\0') { putNewLink(newLink,ss); break; } else i++; } ReadLink(newLink); //cout<<newLink->head->Next->s<<endl; //puts(s); return 0; }
View Code
相关文章推荐
- google的面试题(三维动态规划的范例)——(87)Scramble String
- JVM简介
- 从逆向的角度去理解C++虚函数表
- Linux makefile教程-详细易懂
- 为openstack制作windows镜像
- iOS开发辅助工具,沙盒定位软件和数据库可视化软件
- 用正则在eclipse中搜寻出所有中文字符
- [Decode error - output not cp1252][Decode error - output not utf-8]
- Linux下的利器——supervise
- CheckComboboxEdit、CheckedListBoxControl
- IOS中nil/Nil/NULL的区别
- 微信分享
- Dapper学习笔记(2)-链接引用
- 欢迎使用CSDN-markdown编辑器
- 谈谈我对sku的理解(1)
- jquery常用函数与方法汇总
- 入理解最强桌面地图控件GMAP.NET ---离线地图
- Android扫描二维码及生成二维码Demo
- 一个精炼的广度优先搜索算法
- 看看世界上薪水最高的公司,一对比我哭了...