C语言实现单词逆序输出
#include<stdio.h> #include<string.h> int main() { char a[100000]; char b[100000]; int counter=0; gets(a); for(int i=0;i<strlen(a);i++)//去掉多余的空格并存放在新数组b中 { if(a[i]!=32) { b[counter]=a[i]; counter++; } if(a[i]==32&&a[i+1]!=32) { b[counter]=a[i]; counter++; } } int counter2=counter; for(int i=counter-1;i>=0;i--)//逆序遍历,打印空格后单词 { if(b[i]==32) { for(int j=i+1;j<counter2;j++) printf("%c",b[j]); counter2=i; printf(" "); } } for(int j=0;j<counter2;j++)//打印第一个单词 printf("%c",b[j]); }