蓝桥杯: P0702 strcmp函数
蓝桥杯: P0702 strcmp函数
在C语言中,有一个strcmp函数,其功能是比较两个字符串s1和s2。请编写一个你自己的字符串比较函数my_strcmp,来实现strcmp函数的类似功能。如果s1=s2,则返回0;否则返回s1 与s2 第一个不同字符的差值(如果s1<s2,该差值是一个负数;如果s1>s2,该差值是一个正数)。编写测试程序,输入两个长度小于1000的字符串(可能包含有空格,且长度不一定相等),然后调用my_strcmp函数来进行比较,并输出返回结果。
输入:
aBcDefgf
aacdef
输出:
-31
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner input=new Scanner(System.in);String str1=input.nextLine();String str2=input.nextLine();my_strcmp(str1, str2);}//如果s1=s2,则返回0;否则返回s1 与s2 第一个不同字符的差值public static void my_strcmp(String str1,String str2){char []char1=str1.toCharArray();char []char2=str2.toCharArray();//找出最短字符串长度,以在while情况减少循环次数int len=(char1.length<=char2.length?char1.length:char2.length);int result=0;char char3=0;//0int i=0;//分三种大情况论述:1、ab ac 2、ab abc 3、abc abwhile (i<len+1){//多循环一次判断:例如情况hi his||his hi//长度不等一定不会返回0,因此在长度不等的if循环中只需找出它们不等出即可if (char1.length<char2.length){// 例如情况hi hisif (i<char1.length){//防止数组越界if (char1[i]!=char2[i]){//遇到不等的直接ascii码的相减值返回result=(int)char1[i]-(int)char2[i];System.out.println(result);return ;}}else {//超过最短字符串的长度,最长字符串就只需用比短多一位来比较result=char3-(int)char2[i];System.out.println(result);return;}}else if (char1.length>char2.length){if (i<char2.length){if (char1[i]!=char2[i]){//遇到不等的直接ascii码的相减值返回result=(int)char1[i]-(int)char2[i];System.out.println(result);return ;}}else {result=(int)char1[i]-char3;System.out.println(result);return;}}else{//长度相等,可能返回0,可能返回其它数。如:aa aa||aa abif (i<len){//防止数组越界//全部相等返回0if (char1[i]==char2[i]){result=0;}else{//不全部相等,返回其它数result=(int)char1[i]-(int)char2[i];System.out.println(result);return ;}}}i++;}//判断全部相等后输出它System.out.println(result);}}
蓝桥杯: P0702 strcmp函数相关推荐
- 蓝桥杯比赛常考算法_蓝桥杯总结-常用函数及算法
或 void *memset(void *s, int ch, size_t n); #include sort(a,a+n)排序函数,从小到大,a为数组名字,n为元素个数 sort(vector.b ...
- 蓝桥杯2015年第六届C/C++ B组省赛习题题解
目录 第一题:奖券数目 第二题:星系炸弹(日期计算) 第三题:三羊献瑞(全排列) 第四题:格子中输出 第五题:九数组分数(dfs) 第六题:加法变乘法(枚举) 第七题:牌型种数(dfs+dp) 第八题 ...
- 2012年第三届C B组蓝桥杯省赛真题
这里是蓝桥杯历年的题目专栏,将会陆续更新将往年真题以及解答发布出来,欢迎各位小伙伴关注我吖,你们的点赞关注就是给我最好的动力!!! 全网最全蓝桥杯历年真题及详细解答 目录 第一题:微生物增殖 第三题: ...
- Java语言strcmp函数用法_蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法)
蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法) 首先这不是一个多难的题,但是网上的我没怎么找到有Java的代码,基本全都是c语言的,小编是个小白,如果有不对的地方请联系小编 问题描述 ...
- 蓝桥杯-11-1实现strcmp函数(java)
算法提高 11-1实现strcmp函数 时间限制:1.0s 内存限制:256.0MB问题描述自己实现一个比较字符串大小的函数,也即实现strcmp函数.函数:int myStrcmp(char *s1 ...
- 蓝桥杯 ADV-227 算法提高 11-1实现strcmp函数
问题描述 自己实现一个比较字符串大小的函数,也即实现strcmp函数.函数:int myStrcmp(char *s1,char *s2) 按照ASCII顺序比较字符串s1与s2.若s1与s2相等返回 ...
- 【蓝桥杯Java_C组·从零开始卷】第四节(附)、字符串常用函数
导读 本文章将java中字符串常用的字符串进行罗列与对应demo的示例,帮助java初学者与蓝桥杯参赛的选手提升对JavaSE的理解. 目录 字符串由来 字符串转成byte数组 常用字符串函数列表: ...
- 4.7蓝桥杯做题-心愿便利贴-消失的 Token-封装 Promisefy 函数-趣购-乾坤大挪移心法
4.7蓝桥杯做题 文章目录 4.7蓝桥杯做题 1.心愿便利贴 2.消失的 Token 3.封装 Promisefy 函数 4.趣购 5.乾坤大挪移心法 总结: 1.心愿便利贴 在初始化的时候输入框并没 ...
- 蓝桥杯算法训练合集十二 1.比较2.计算最小公倍数3.比赛安排4.潜伏者5.P0702
目录 1.比较 2.计算最小公倍数 3.比赛安排 4.潜伏者 5.P0702 1.比较 问题描述 给出一个n长的数列,再进行m次询问,每次询问询问两个区间[L1,R1],[L2,R2], 询问数列第L ...
最新文章
- 公众号群发文章支持添加小程序
- 【 FPGA 】门控时钟专题
- Lambda表达式有参数有返回值的练习
- 一周之内,如何快速摸清一个行业?
- 战神笔记本电脑自带access吗_书评:6本二次元小说,每一本都很有想象力,你都读过吗?...
- 今年蚊子有点慌!有人用100瓶花露水洗澡!
- 基于ASP的课外培训在线教育毕设免费下载
- python 中的堆栈 用列表实现
- Pandas+Matplotlib,深入浅出Python数据分析
- python编程基础及应用教程答案_Python编程基础教程
- [Render] Unity SRP 概述:可编写脚本的渲染管道
- 网络模型可视化工具netron
- 「津津乐道播客」#342 编码人声:跟「老」程序员们聊聊编程的历史与未来
- 微信小程序地区选择,单级学校选择和省,市,区选择
- 首屏加载,与less的初始化css
- 如何用uniapp+vue开发自定义相机插件——拍照+录像功能
- Unity Gate Fit
- restrict / __restrict / __restrict__ 关键字
- 【Unity3d】3d网页游戏场景打包与加载
- 小鸟云独享虚拟主机和共享虚拟主机区别对比
热门文章
- 如何使企业中的e-Learning价值最大化
- 女程序员向同事发200多条信息表白, 对方一条信息没回, 精神失常
- 均匀分布白噪声和高斯白噪声及其matlab产生方式
- 探索微前端的场景极限
- 【计算机网络】学习笔记:第五章 传输层【王道考研】
- java selection does not contain a main type_The selection does not contain a main type的解决
- 流行音乐界有一个人叫Michael Jackson!
- offsetTop、clientTop、scrollTop、offsetTop
- 武汉市天燃气无法正常使用--解决方法
- GME散户的炮灰史:GME跌超80%,WSB论坛内斗,带头大哥被查,终极赢家浮出水面...