您的位置:首页 > 其它

code[vs] - 1205 单词翻转 - 字符串

2014-09-13 23:11 267 查看

输入包括一个英语句子。按单词的顺序把单词倒序输出。

没错,就是这么简单的题目,卡了我四十多分钟!!!!分分钟推了重写三遍!!!

想说网络赛虐死,找找水题提高自信,卧槽!!!!!我的自信已经风中凌乱消失不见了啊!!!

被文件流坑死啊!!!!

说好的简单粗暴好用的 fgets 呢!!!人和代码之间这一点简单的友谊都没有了啊!!!

 freopen("in.txt","r",stdin);

当我加上这么一句话才发现自己错在哪里了!!!!

in.txt:

i love you     -->结尾为换行符

happy day   -->结尾为换行符

one appple  -->文本末尾 结尾就是 e 这个字母啊是字母啊字母!!!!!!!!

一直黑框输入输出数据就没错啊没错!!原来坑在这里啊!!!我真是脑子秀逗啊我擦!!!

我已经委屈的嘤嘤的哭起来了!!!!

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
const int M = 3000 + 5;
char str[M];
int main()
{
//freopen("in.txt","r",stdin);
while (fgets(str, M, stdin))
{
int len;
len = strlen(str);
int id;
if(str[len-1]=='\n')
{
id = len-1;
}
else id = len;
str[id] = ' ';
reverse(str, str + id);
//puts(str);

int sl = 0;
for (int i = 0; i <=len; ++i)
{
if (str[i] == ' ')
{
reverse(str + sl, str + i);
sl = (i + 1);
}
}
str[id] = '\0';
puts(str);

}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: