#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char str1[150]={'\0'};
char str2[50]={'\0'};
char result[150]={'\0'};
int m=0;
gets(str1);
int j=0;
for(int i=strlen(str1)-1;i>=0;i--)
{
if(str1[i]==' ')
{
for(int k=strlen(str2)-1;k>=0;k--)
{
putchar(str2[k]);
}
//printf("%d",strlen(str2));
int num=strlen(str2);
for(int k=0;k<num;k++)//這裏改成strlen(str2)就錯誤了,錯誤的原因在於strlen是每一次算a[0]到a[i]!='\0'的長度,而我這裏又剛剛好是str2[k]='\0',所以就出現了問題
{
str2[k]='\0';
}
//不該相關聯的地方就拆開
putchar(' ');
j=0;
continue;
}
str2[j]=str1[i];
j++;
}
puts(str2);
return 0;
}
單詞倒排(C語言源代碼)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.