#include<stdio.h>
#include<string.h>
#define N 100
int main()
{
int i = 0;
int j = 0;
int m = 0;
int n = 0; //定义四个变量并初始化为0
char a[N];
char b[N];
char c[N]; //定义三个字符数组
printf("please input a string:\n");
gets(a); //从终端获取字符串
n = strlen(a); //计算字符串的长度
for(i = n - 1;i >= 0; i--) //将a[n - 1]赋值给b[0],依次循环,得到其逆序数组b
{
b[j] = a[i];
j++;
}
j = 0;
for(i = 0;i < n; i++) //控制循环的次数为n
{
if(b[i] !=' ') //如果b[i]不为空格,将其赋值给c[j]
{
c[j] = b[i];
j++;
}
if(b[i] == ' '|| i == n -1) //如果b[i]为空格或者b[j] = n - 1,进行循环
{
for(m = j -1; m >= 0; m--) //通过循环将单词逆序打印出来
{
printf("%c",c[m]);
}
j = 0;
}
if(b[i] == ' ') //如果b[i]为空格,打印出空格
{
printf(" ");
}
}
printf(" \n");
return 0;
}