C语言编写程序去除字符串中的星号
时间: 2023-10-16 15:08:13 浏览: 78
好的,您可以使用C语言中的字符数组和循环来去除字符串中的星号,示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char string[] = "****A*BC*DEF*G*******";
int len = strlen(string);
int i, j;
for (i = 0, j = 0; i < len; i++) {
if (string[i] != '*') {
string[j++] = string[i];
}
}
string[j] = '\0';
printf("%s\n", string);
return 0;
}
```
输出结果为:
```
ABCDEFG
```
在上面的代码中,我们使用了两个变量 `i` 和 `j`,其中 `i` 是遍历字符串的索引,`j` 是指向新字符串的索引。当遍历到非星号字符时,将其保存到新字符串的指定位置,并将 `j` 加一,以便下一个字符的保存。最后,将新字符串的最后一个字符标记为字符串结束符 `'\0'`。
相关问题
c语言编写程序删除字符串指定字符
以下是一个C语言程序示例,用于删除字符串中指定的字符:
```
#include <stdio.h>
#include <string.h>
void removeChar(char *str, char c) {
int i, j;
int len = strlen(str);
for (i = j = 0; i < len; i++)
if (str[i] != c)
str[j++] = str[i];
str[j] = '\0';
}
int main() {
char str[100], c;
printf("Enter a string: ");
fgets(str, sizeof(str), stdin);
printf("Enter the character to remove: ");
scanf("%c", &c);
removeChar(str, c);
printf("Result: %s\n", str);
return 0;
}
```
该程序通过调用`removeChar`函数来删除字符串中指定的字符。该函数使用两个指针`i`和`j`,并遍历字符串中的每个字符。如果字符不等于指定字符,则将其复制到`j`位置,并将`j`向前移动一位。最后,将字符串的末尾设置为`'\0'`,以确保该字符串以正确的方式终止。
在`main`函数中,程序从标准输入中读取一个字符串,并从用户输入中读取要删除的字符。然后,调用`removeChar`函数来删除指定的字符,并将结果打印到控制台上。
C语言编写程序求字符串的长度。
可以使用C语言中的字符串库函数`strlen()`来求字符串的长度,需要包含头文件`string.h`。示例代码如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("字符串的长度为:%d\n", len);
return 0;
}
```
以上代码中,首先定义了一个字符数组`str`用于存储输入的字符串,然后使用`scanf()`函数从标准输入读取字符串。接着使用`strlen()`函数求取字符串长度,最后输出结果。