編程題#1:單詞翻轉
來源: POJ (Coursera聲明:在POJ上完成的習題將不會計入Coursera的最后成績。)
注意: 總時間限制: 1000ms 內存限制: 65536kB
描述
輸入一個句子(一行),將句子中的每一個單詞翻轉后輸出。
輸入
只有一行,為一個字符串,不超過500個字符。單詞之間以空格隔開。
輸出
翻轉每一個單詞后的字符串,單詞之間的空格需與原文一致。
樣例輸入
hello world
樣例輸出
olleh dlrow
#include<iostream> #include<stdio.h> #include<string.h> int main() { int i = 0, j , k; char s[501], temp; 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; }