删除字符串中指定字符。如何编写这个程序?
删除字符串中指定字符。要求:(1)字符串存储在chars[80]字符数组中,且通过键盘接收字符串;(2)使用字符型变量从键盘接收待删除字符;(3)如果没有删除则显示“未删...
删除字符串中指定字符。要求:
(1) 字符串存储在char s[80]字符数组中,且通过键盘接收字符串;
(2) 使用字符型变量从键盘接收待删除字符;
(3) 如果没有删除则显示“未删除字符”,否则显示所删除字符个数。如:输入字符串"tomorrow"和字符'o',则显示“删除指定字符后字符串更新为:tmrrw,已删除3个字符” 展开
(1) 字符串存储在char s[80]字符数组中,且通过键盘接收字符串;
(2) 使用字符型变量从键盘接收待删除字符;
(3) 如果没有删除则显示“未删除字符”,否则显示所删除字符个数。如:输入字符串"tomorrow"和字符'o',则显示“删除指定字符后字符串更新为:tmrrw,已删除3个字符” 展开
1个回答
展开全部
C代码和运行结果如下:
输出符合示例,望采纳~
附源码:
#include <stdio.h>
int main() {
char s[80], c;
int i, k = 0, cnt = 0;
scanf("%[^\n]", s); // 输入一行字符串,遇回车停止
getchar(); // 吸收换行符\n'
c = getchar(); // 待删除字符
for (i = 0; s[i] != '\0'; i++) {
if (s[i] == c)
cnt++; // 统计删除个数
else
s[k++] = s[i];
}
while (s[k] != '\0') // 结尾清零
s[k++] = '\0';
if (cnt == 0)
printf("未删除字符\n");
else
printf("删除指定字符后字符串更新为:%s, 已删除%d个字符\n", s, cnt);
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询