测试通过:
#include
#include
int main()
{
char str[] = "you can cage a swallow can't you?";
char arr[10][10] = { '\0' };
int i, index = 0, pos = 0; /* index指的是第几个单词,pos指的是该单词第几个字母 */
for (i = 0; i < (int)strlen(str); i++)
{
if (str[i] == '?' || str[i] == '!' || str[i] == '.')
{
index++;
pos = 0;
arr[index][pos] = str[i];
break;
}
else
{
if (str[i] != ' ')
{
arr[index][pos] = str[i];
pos++;
}
else
{
arr[index][pos] = '\0';
index++;
pos = 0;
}
}
}
puts(str);
for (i = index - 1; i >= 0; i--)
printf("%s ", arr[i]);
printf("%s\n", arr[index]);
return 0;
}
貌似有点难也