当前位置: 代码迷 >> 综合 >> 1144:单词翻转(c++)
  详细解决方案

1144:单词翻转(c++)

热度:86   发布时间:2024-02-13 01:38:45.0

【题目描述】
输入一个句子(一行),将句子中的每一个单词翻转后输出。

【输入】
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。

【输出】
翻转每一个单词后的字符串,单词之间的空格需与原文一致。

【输入样例】
hello world
【输出样例】
olleh dlrow

#include<iostream>
#include<stdio.h>
#include<string.h>
char s[500],temp;
using namespace std;
int main(){int i=0,j,k;gets(s);while(s[i]){while (s[i] == ' ') i++;if(!s[i]) break;j = i;while(s[j] != ' '&&s[j]) j++;for (k = i; k < (i + j) / 2; k++){temp = s[k];s[k] = s[j-1+i-k];s[j-1+i-k] = temp;    }i = j;}printf("%s\n",s);return 0;
}