C语言实现将一个字符串翻转
问题: 对于字符串char* = "abcdefg h";
要求输出" h efgabcd ";
字符串整体翻转,但是里面每一个单词的顺序不翻转
思想:<1>取得原始字符串的长度,
<2>将字符串第一个出现空格位置的索引记录下来,并且放到一个整形数组里,例如上面的
出现空格的位置分别是0 511那么记录数组int b[j];
b[0]=0b[1] =5;
b[2]=11;
<3>针对每一个空格开始出现的位置,将数组b[j] 逆序输出,例如
"h"输出 "h "
"efg"输出"efg"
" abcd"输出“abcd "
<4>将上面的输出用strcat拼接起来就是得到的目的字符串
代码如下:
#include
#include using namespace std;
#define ARRAY_LEN 10int main() {
char* a="OPKI amtestabcdef";
int len = strlen(a);
cout<<"original---"< 0;
k--) {
int tmp = b[k-1];
int i = 0;
bool flag = false;
while(a[tmp] != '\0') {
char ch = a[tmp];
if (ch != ' ') {
flag = true;
cout<0;
t--) {
cout<<' ';
}
}if (!firstempty) {
cout<<*a;
while(*(++a) != ' ')
cout<<*a;
}
cout<<"---"<
【C语言实现将一个字符串翻转】转载于:https://www.cnblogs.com/lifeng-blog/p/7567831.html
推荐阅读
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- MybatisPlus使用queryWrapper如何实现复杂查询
- python学习之|python学习之 实现QQ自动发送消息
- 【生信技能树】R语言练习题|【生信技能树】R语言练习题 - 中级
- 科学养胃,别被忽悠,其实真的很简单
- 其实你就是个普通人
- 海院(实干是海院风景(上))
- 你眼里的不公平,其实很公平
- 孩子不是实现父母欲望的工具——林哈夫
- 一起来学习C语言的字符串转换函数