PTA 1009 說反話 (20)(20 分) 給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。
阿新 • • 發佈:2019-02-13
給定一句英語,要求你編寫程式,將句中所有單詞的順序顛倒輸出。
輸入格式:測試輸入包含一個測試用例,在一行內給出總長度不超過80的字串。字串由若干單詞和若干空格組成,其中單詞是由英文字母(大小寫有區分)組成的字串,單詞之間用1個空格分開,輸入保證句子末尾沒有多餘的空格。
輸出格式:每個測試用例的輸出佔一行,輸出倒序後的句子。
輸入樣例:
Hello World Here I Come
輸出樣例:
Come I Here World Hello
首先,要明白空格和空字元('\0')不一樣,再明白 getchar()這個函式用法,getchar()這個函式可以 輸入 空格但是 不能 輸入進 換行( '\n' ),知道這些以後,這個題就很容易了。
#include<stdio.h> #include<string.h> int main(void) { char a[100][100],c; int length,i; length=80; i=0; while((c=getchar())!='\n') { if(c==' ') { a[length][i]='\0'; //這一步很重要,防止 字元陣列 輸出過界 length--; i=0; continue; } else { a[length][i]=c; i++; } } a[length][i]='\0'; for(i=length;i<81;i++) { if(i==80) { printf("%s",a[80]); break; } else printf("%s ",a[i]); } return 0; }