假定输入的字符中只包含字母和“ * ”号。编写一个函数fun,该函数的功能是将字符串中前导“ *
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了假定输入的字符中只包含字母和“ * ”号。编写一个函数fun,该函数的功能是将字符串中前导“ *相关的知识,希望对你有一定的参考价值。
假定输入的字符中只包含字母和“ * ”号。编写一个函数fun,该函数的功能是将字符串中前导“ * ”号全部移到字符串的尾部
1、首先,我们定义一个反序函数 revStr,它的参数为一个字符指针。
2、随后,获取传入的字符串的长度。
3、接着定义一个临时字符变量,以便在交换首尾字符时使用。
4、最后,通过一个循环,从头尾开始,逐个交换两头的字符。
5、在主程序中来测试一下该函数。
6、运行结果截图。可以看到,字符串123456789被成功反序了。
参考技术A 本回答被提问者采纳 参考技术B这样写效果更好!
实验五
/* 假定输入的字符串中只包含字母和*号。 编写函数,实现: 除了字符串前导和尾部的*号之外,将串中其他*号全部删除。 在编写函数时,不得使用C语言提供的字符串函数。 例如,若字符串中的内容为****A*BC*DEF*G******* 删除后,字符串中的内容则应当是****ABCDEFG****** */ #include <stdio.h> #include <string.h> void fun(char *a) { int i=0; char *t = a, *f = a; char *q = a; while(*t)//把t定位到倒数第二个字符 t++; t--; while(*t==‘*‘)//分析第三段 t--; while(*f==‘*‘)//分析第一段 f++; while (q<f) { a[i] = *q; q++; i++; } while (q<t) { if(*q!=‘*‘) { a[i] = *q; i++; } q++; } while (*q) { a[i] = *q; i++; q++; } a[i]=‘