请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。
时间: 2024-03-06 17:48:10 浏览: 48
好的,以下是Java语言的示例代码:
```java
public static String fun(String s) {
int i = 0;
while (i < s.length() && s.charAt(i) == '*') { // 删除前导*号
i++;
}
return s.substring(i);
}
// 测试
public static void main(String[] args) {
String s = "***abc*def***";
System.out.println(fun(s)); // 输出:abc*def***
}
```
这个函数首先使用了一个while循环来删除前导*号。循环的条件是字符串s的第一个字符是*号,且字符串s没有被遍历完。在循环中,每次把字符串指针向后移动一位,直到遇到一个非*号字符。
最后,函数返回从第一个非*号字符开始的子字符串,即中间和尾部的*号不会被删除。
如果你需要在其他编程语言中实现这个函数,可以按照同样的思路编写代码。
相关问题
规定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除。
好的,我可以帮你编写这个函数。以下是示例Python代码:
```python
def fun(s):
i = 0
while i < len(s) and s[i] == '*': # 删除前导*号
i += 1
return s[i:]
# 测试
print(fun('***abc*def***')) # 输出:abc*def***
```
这个函数首先使用了一个while循环来删除前导的*号。循环的条件是字符串s的第一个字符是*号,且字符串s没有被遍历完。在循环中,每次把字符串指针向后移动一位,直到遇到一个非*号字符。
最后,函数返回从第一个非*号字符开始的子字符串,即中间和尾部的*号不会被删除。
如果你需要在其他编程语言中实现这个函数,可以按照同样的思路编写代码。
规定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部删除,中间和尾部的*号不删除
。函数接口定义:
void fun(char *s);
函数的输入参数:
char *s:指向输入字符串的指针。
函数的输出参数:
无。
函数的返回值:
无。
例如,对于下面的程序:
#include <stdio.h>
#include <string.h>
void fun(char *s);
int main()
{
char s[100];
gets(s);
fun(s);
printf("%s\n", s);
return 0;
}
如果输入字符串为:
****A*B*C*D****
则输出:
A*B*C*D****
如果输入字符串为:
***A**B**C**D***
则输出:
A**B**C**D***