删除字符串中与另一个字符串中的相同字母的自定义函数

news/2024/10/7 12:20:19
#include <stdio.h>
/*********************************************************************	函数名称:	str_DestDel*	函数功能:   删除一个字符串中与另一个字符串中的相同字母并且不区分大小写* 	函数参数:* 				@strA	需要操作的字符串* 				@strB	作为参考的字符串*	返回结果:*				@strA	返回删除后的字符串地址*	注意事项:   None*	函数作者:   mailLinL@163.com*	创建日期:   2024/05/06*	修改历史:*	函数版本:	V1.0* *****************************************************************/
char *str_DestDel(char *strA, char *strB)
{// 记录字符串A的首地址  一轮比较结束后需回到最开始的位置char *temp = strA;// 记录字符串中字符不相同的位置  从首地址开始  比较结束后返回开始地址char *p = strA;// 使用字符串B中每一个元素和字符串A比较while (*strB){// 当字符串B中的元素不是字母时  跳出本轮循环if ((*strB < 'A' || *strB > 'Z') && (*strB < 'a' || *strB > 'z')){strB++;continue;}// 遍历判断字符串A的字符与字符串B的字符是否相同  不区分大小写while (*temp != '\0'){// 当字符串B的字母与字符串A的当前字母不同时 将当前地址下的字母赋值给p指针下的地址 后两个指针进行偏移if ((*temp == *strB) || (*temp == *strB - 32) || (*temp == *strB + 32));// 当相同时 仅将做比较用的指针偏移else{*p = *temp;p++;}temp++;if (*temp == '\0'){*p = '\0';}}temp = strA;p = strA;strB++;}return strA;
}

以下为测试代码及结果

int main()
{char str1[] = "ABCDEFGHGFEDCBA";char str2[] = "cE";str_DestDel(str1, str2);printf("%s\n", str1);return 0;
}

image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/28263.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

SwiftUI Text 文字处理

代码// // ContentView.swift // SwiftUIText // // Created by CHEN Hao on 2024/5/6. //import SwiftUIstruct ContentView: View {var body: some View {VStack{Text("Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by…

情感分词新手实践

Tutorial for Sentiment AnalysisAmazon Full Review 情感分析任务 input: Remark Text output: Sentiment(\(\{-1, 0, 1\}\)) convert to \(\{0, 1, 2\}\) for calculating accuracy Mark: 之前没有用 torch 做过 NLP,因此相当于一个 tutorial 数据准备工作文本分词NLP 需要将…

生活常见物理层接口(除去网线)

生活物理层接口 1.USB接口 秒懂所有USB接口类型,USB接口大全;Type-A、Type-B、Type-C、miniUSB、microUSB区分-知乎追风少年上图漏掉了苹果的lightning接口,又叫闪电接口USB-A全称USB Type-A口,俗称USB接口是最常见的接口,如下图左侧接口内部舌头非蓝色的是USB2.0,右侧蓝…

测试分类

单元测试:针对程序的最小单元来进行正确性检验的测试工作,包括类、方法等。(严格来说,单元测试只针对【功能点】进行测试,不包括对业务流程正确性的测试) 功能测试/接口测试:测试接口的功能是否正确。【接口,输入输出】 端到端测试:模拟真实用户的请求(客户端--服务端…

Linux学习第二天

今天学习linuxC编程。首先要熟悉linux下编写c程序的过程。 编写程序Hello World! 首先创建存放程序的文件夹,如下图所示:接下来在创建一个文件夹来保存这节要编写的代码。指令:mkdir 3.1接下来我们要设置VIM编辑器的一些配置,比如设置tab的字符数为4、以及设置VIM编辑器的行…

《线性代数的本质》笔记10

10-特征值与特征向量特征向量几何含义:在一次特定的线性变换中没有脱离原本张成空间的向量。特征值即为这个特征向量在这次变换中缩放的比例。 推导: $$ A\vec{v}=\lambda\vec{v} $$ $$(A-\lambda\textit{I})\vec{v}=\vec{0}$$ $$det(A-\lambda\textit{I})=0$$ 但并非所有线…

目录遍历-基于Pikachu的学习

目录遍历 原理 目录浏览漏洞是由于网站存在配置缺陷,存在目录可浏览漏洞,这会导致网站很多隐私文件与目录泄露,比如数据库备份文件、配置文件等,攻击者利用该信息可以更容易得到网站权限,导致网站被黑。 Pikachu 打开题目就是两个超链接,我随便点了一个发现url发现变化,有…

Testing Egineer note:2024_5_5-day05-part01

版本控制器之svn介绍 1.svn介绍(版本控制工具) 1、svn的定义: svn是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式个管理。 2.snv的作用: 在项目中对需求规格说明书,测试用例,…