编写一个程序,按照相反的单词顺序显示命令行参数,即,如果命令行参数
是see you later,程序的显示应为later you see
分析:本题可以使用字符串分割函数来做,因为各个单词之间需要使用空格' '来进行分隔,我们可以以此为切入点,将各个单词使用分割函数strtok分隔开来,将分隔之后的字符串一次存入另一个指针数组当中,然后将此指针数组逆序打印出来即可。
代码:
/*
3.编写一个程序,按照相反的单词顺序显示命令行参数,即,如果命令行参数
是see you later,程序的显示应为later you see
*/
#include <stdio.h>
#include <string.h>
int main()
{
char str[] = "hello world ni hao world";
puts(str);
char *p[100];
char *ret;
int i = 0;
ret = strtok(str, " ");
while (ret != '\0')
{
i++;
p[i] = ret;
ret = strtok(NULL, " ");
}
while (i >= 0)
{
printf("%s ", p[i]);
i--;
}
return 0;
}
运行结果: