2011-10-30---输入一串单词,将单词逆序输出
2011-10-31 21:20
274 查看
单词是以空格为间隔的,仔细消化谭浩强书上的例题,可以成功解决问题。
【输入】
源字符串。
【输出】
逆序后的字符串。
【返回值】
单词个数。
调试运行结果如下:
【输入】
源字符串。
【输出】
逆序后的字符串。
【返回值】
单词个数。
#include <stdio.h> /************************************************************************************* ** 函数名称: ReverseWords() ** 作 者: zyh ** 版 本: 1.0.0 ** 日 期: 2011-10-29 ** 功能描述: 输入一个字符串,将其单词逆序输出 ** 输 入: 字符串 ** 输 出: 结果字符串指针数组 ** 返 回 值: 字符串中单词个数 ** 其 他: ** 修改历史: 1. 修改时间: 修 改 者: 版 本: 修改简述: 2. ...... **************************************************************************************/ int ReverseWords(char *str,char *resultWords[]) { int wordStart = 0; /* 判断单词是否开始,注意初始化 */ int wordCount = 0; /* 统计单词个数,注意初始化 */ char *tempWords[256]; /* 指针数组,用来存放每个单词的起始地址 */ int i; /* 循环控制变量,遍历原始字符串 */ int j; /* 循环控制变量,控制单词地址 */ for (i = 0; str[i] != '\0'; i++) { if (str[i] == ' ') /* 如果当前字符为空格,则表示不是单词 */ { wordStart = 0; /* 表示符置零 */ str[i] = '\0'; /* 将非字母全部填充为\0 */ } else /* 如果当前字符不是空格,但是前面一个字符是空格,表示单词开始 */ if (wordStart == 0 ) { wordStart = 1; /* 单词开始 */ tempWords[wordCount++] = &str[i]; /* 每个单词开始的字母的地址 */ } } for (j = 0; j < wordCount; j++) { resultWords[j] = tempWords[wordCount - 1 - j]; /* 逆转,为了逆序输出 */ } return wordCount; /* 返回单词个数 */ } int main(void) { char str[] = "I love China forever."; char *resultWords[256]; /* 指针数组,用来存放结果单词的起始地址 */ int wordCount = ReverseWords(str,resultWords); /* 调用 */ for (int i = 0; i < wordCount; i++) { printf("%s ",resultWords[i]); } putchar('\n'); return 0; }
调试运行结果如下:
相关文章推荐
- 输入一个字符串,将字符串中的单词逆序输出
- 输出迭代器 ostream_iterator 把输入的一串字符按每行一个单词输出
- 输入一串字符,对其逆序输出 Reversed.java
- 80x86汇编编程:把一串字符从键盘输入,然后逆序输出
- 输入一串字符,找出最长和最短单词并输出
- 输入字符串按照单词逆序输出
- Java 输入一串字符按照格式逆序输出
- 输入一串字符,输出单词的个数
- 小程序(七)C语言 输入字符 检测后每个单词逆序输出
- 输入一个英文句子,按单词逆序输出
- 笔试题输入一串字符,倒叙单词输出,结尾符号不变
- 编写程序通过栈的方式将任意输入的字符串内容进行逆序输出。
- 实验6 数组1 输入n个整数,存入数组a中,分别按正序和逆序输出这些数
- C语言初级练习——编写一个乘法表,呈倒三角形、输入一串字符,要求输出这串字符中的数字最多的那段的位置以及这段数字的个数
- C++输入一个字符串,把其中的字符按照逆序输出的两种方法解析
- 华为面试题一例 - 逆序输出此单词字符串, 并保留最后的标点
- 输入一串字符,要求数字从小到大,字母从a到z排序,输出字母和数字的排序结果。
- 把一个英语句子中的单词次序颠倒后输出。例如输入“how are you”,输出“you are how”
- C语言:用递归实现将输入的整数按逆序输出。如输入12345,则输出54321。
- (c语言)输入一串数字,输出字符串