苟哥的笔记本
首页
文章归档
关于
文章归档
关于
首页
编程
正文
C程序设计语言第2版习题2-4
苟哥
2019-06-06 PM
1052℃
0条
###问题描述 编写函数squeeze(s1, s2), 把字符串s1中与字符串s2中字符匹配的所有字符都删除。 ###问题拆分 - 主函数 main - 接收用户输入字符串函数 get_line (注意不能按照书本上的getline,因为此函数已在stdio.h 中定义了) - 从s1中移除s2中包含的字符 函数 squeeze ###代码实现 ```c #include
#define LINE 1000 int get_line(char s[]); int squeeze(char s[], char search[]); int main() { char line[LINE]; char search[LINE]; //要过滤的字符串 int len; printf("Type the search:\n"); get_line(search); printf("Type the subject:\n"); while(len = get_line(line) > 0){ squeeze(line, search); printf("The result is: %s \n", line); } return 0; } //接收一行字符串 int get_line(char s[]) { int i; char c; for(i = 0; i < LINE - 1 && (c = getchar()) != EOF && c != '\n'; i++){ s[i] = c; } s[i] = '\0'; return i; } /* * 核心方法,从目标字符串移除指定字符 * 从subject中逐个剔除search中的字符 */ int squeeze(char subject[], char search[]) { int i, j, k; char c; k = 0; while((c = search[k++]) != '\0'){ //逐个移除 for(i = j = 0; subject[i] != '\0'; i++){ if(subject[i] != c){ subject[j++] = subject[i]; } } subject[j] = '\0'; } return 0; } ```
标签:
C程序设计语言
,
算法
,
C语言
,
习题2-4
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:
http://www.i366211.com/archives/16/
上一篇
C程序设计语言第2版习题2-3
下一篇
C程序设计语言第2版习题2-7
取消回复
评论啦~
提交评论
栏目分类
软件安装
10
开发工具
8
算法
2
测试
1
架构
3
填坑记
2
开源
6
科普
6
私域
2
读书笔记
4
编程
48
运营
3
管理
1
标签云
算法
C程序设计语言
C语言
Java
mysql
PHP
ffmpeg
golang
VueJs
脚手架
VueJs实战项目
Intellij IDEA
Centos7
Hyperf
抖音运营
杰克韦尔奇
跌荡一百年
生成海量测试数据
企业管理
习题2-3
习题2-4
习题2-6
异常分类
File
习题2-7
习题2-8
习题2-9
习题3-3
习题3-4
习题3-5
友情链接
申请
SaaS引擎
机器人框架
京东捡漏