C语言实现句子单词逆序输出
2018-03-15 15:25
1006 查看
/* * 文件名: reverseWord.c * 文件功能: 把字符串中的所有单词逆序输出 * 编写人:王廷云 * 编写日期:2017-12-20 */ #include <stdio.h> #include <string.h> void reverseWords(char *str); // 单词逆转函数声明 /* 主函数 */ int main(void) { char str[] = "hello world! this will be reverse!"; // 待逆转字符串 fprintf(stdout, "原字符串: \n\t%s\n", str); fprintf(stdout, "字符串单词逆序之后: \n\t"); #if 0 /* 方法一:使用第归函数 */ reverseWords(str); #else /* 方法二:使用算法 */ char *ptrArr[100]; // 装每个单词的地址 char *ret; int idx = -1; // 指针数组元素索引:栈的数学模型思想 ret = strtok(str, " "); // 单词以空格隔开 while (ret != NULL) { idx++; ptrArr[idx] = ret; ret = strtok(NULL, " "); } /* 逆序打印结果 */ while (idx >= 0) { fprintf(stdout, "%s ", ptrArr[idx]); idx--; } putchar('\n'); #endif return 0; } /* * 函数名:reverseWords * 函数功能:第归打印字符串中的单词 * 参数:字符串地址 */ void reverseWords(char *str) { char *ret; /* 第一次传字符串指针给strtok */ ret = strtok(str, " "); if (ret == NULL) // 结束第归条件 { return; } else { /* 第二次传 NULL 给strtok */ reverseWords(NULL); } fprintf(stdout, "%s ", ret); }
相关文章推荐
- Java实现英文句子中的单词顺序逆序输出的方法
- C语言实现句子里的单词倒叙输出
- C++实现英文句子中的单词逆序输出的方法
- C++ 实现句子中单词逆序输出
- c语言实现字符串的逆序输出
- 【C语言】写一个函数,实现字符串内单词逆序
- C语言实现在英语句子查找和替换一个单词。
- C语言:用递归实现将输入的整数按逆序输出。如输入12345,则输出54321。
- PAT乙级 1009. 说反话 (20) 句子中单词逆序输出,'\0'的妙用,字符串分割
- 十进制数,顺序、逆序输出每位数字;(C语言实现)
- 使用栈实现单词逆序输出
- 学习笔记——C语言实现单链表的基本操作:创建、输出、插入结点、删除结点、逆序链表
- 栈的Java实现与单词逆序输出
- 小程序(七)C语言 输入字符 检测后每个单词逆序输出
- java字符串反转,逆序输出(句子反转,单词不反转)
- ODOA(1) 翻转句子中单词的顺序(C语言实现)
- 再论句子中单词的逆序输出
- 句子中的单词逆序输出和归并排序
- C语言实现单链表逆序与逆序输出实例
- C语言递归算法系列_循环实现逆序和正序输出一个整数的每位数 (2)