用c語言將一行句子中的英語單詞倒置而不改變單詞數序

Problem C

單詞倒置

時限:1000ms 內存限制:10000K 總時限:3000ms

描述:

給一行英文句子,把每個單詞倒置,注意:單詞的順序不變。

輸入:

一行英文句子,其中只包含大寫字母、小寫字母和空格。

輸出:

把每個單詞的字母倒置輸出。

輸入樣例:

 akhk jrow mfo zj ajp

輸出樣例:

 khka worj ofm jz pja

#include<stdio.h> #include<string.h> int main() {     int i,j=0,n,k;     char str1[500],str2[500];     gets(str1);     n=strlen(str1);     for(i=0;i<n;i++)     {         if(str1[i]!=' ')//判斷是否爲空格,若不是,將該處字符儲存到字符串數組中         {             str2[j]=str1[i];             j++;          }             if((str1[i]==' '&&str1[i-1]!=' ')||i==n-1)//當該單詞結束時,將儲存到字符串數組中的單詞倒序輸出

        {             for(k=j-1;k>=0;k--)             {             printf("%c",str2[k]);             }             j=0;         }             if(str1[i]==' ')//當遇到空格時,照常輸出         printf(" ");         if(i==n-1)printf("\n"); //句尾輸出換行符     }     return 0; }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章