3.假定输人的字符串中只包含字母和号,编写程序,实现删除字符串中的所有号。:输人A BCDEFG***时, 则输出“ABCDEFG"。(要求使用指针编写。用c语言
时间: 2024-03-09 08:46:59 浏览: 21
可以按照以下步骤实现:
1. 定义一个字符指针,指向输入的字符串。
2. 遍历字符串,每遇到一个非号字符,就将其复制到一个新的字符串中。
3. 最后将新的字符串末尾加上一个null字符,即'\0',表示字符串的结束。
4. 输出新的字符串。
下面是具体的代码实现:
```c
#include <stdio.h>
void removeHash(char* str) {
char newStr[100];
int i, j = 0;
for (i = 0; str[i] != '\0'; i++) {
if (str[i] != '#') {
newStr[j] = str[i];
j++;
}
}
newStr[j] = '\0';
printf("%s", newStr);
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
removeHash(str);
return 0;
}
```
运行程序,输入字符串后,程序将删除其中的#号并输出结果。
相关问题
用C语言:假定输入的字符串中只包含字母和号。编写程序只删除字符串前面的号
好的,以下是一个简单的 C 语言函数,可以实现你所描述的功能:
```c
#include <stdio.h>
#include <string.h>
char* remove_star_prefix(char* s) {
int i = 0;
while (i < strlen(s) && s[i] == '*') {
i++;
}
return s + i;
}
```
这个函数接受一个字符串作为参数,然后删除字符串前面的所有 * 号,并返回新的字符串。它使用了一个 while 循环来找到第一个非 * 字符的位置,然后返回从这个位置开始到字符串末尾的子串。
你可以把这个函数放到你的程序中,然后调用它来处理你的输入字符串。希望这可以帮助到你!
假定输入的字符串中只包含字母和*号。编写程序只删除字符串前面的*号
好的,我理解了你的问题。以下是一个简单的 Python 函数,可以实现你所描述的功能:
```python
def remove_star_prefix(s):
i = 0
while i < len(s) and s[i] == '*':
i += 1
return s[i:]
```
这个函数接受一个字符串作为参数,然后删除字符串前面的所有 * 号,并返回新的字符串。它使用了一个 while 循环来找到第一个非 * 字符的位置,然后返回从这个位置开始到字符串末尾的子串。
你可以把这个函数放到你的程序中,然后调用它来处理你的输入字符串。希望这可以帮助到你!