蓝桥杯: 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函数相关推荐

  1. 蓝桥杯比赛常考算法_蓝桥杯总结-常用函数及算法

    或 void *memset(void *s, int ch, size_t n); #include sort(a,a+n)排序函数,从小到大,a为数组名字,n为元素个数 sort(vector.b ...

  2. 蓝桥杯2015年第六届C/C++ B组省赛习题题解

    目录 第一题:奖券数目 第二题:星系炸弹(日期计算) 第三题:三羊献瑞(全排列) 第四题:格子中输出 第五题:九数组分数(dfs) 第六题:加法变乘法(枚举) 第七题:牌型种数(dfs+dp) 第八题 ...

  3. 2012年第三届C B组蓝桥杯省赛真题

    这里是蓝桥杯历年的题目专栏,将会陆续更新将往年真题以及解答发布出来,欢迎各位小伙伴关注我吖,你们的点赞关注就是给我最好的动力!!! 全网最全蓝桥杯历年真题及详细解答 目录 第一题:微生物增殖 第三题: ...

  4. Java语言strcmp函数用法_蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法)

    蓝桥杯 算法提高 11-1实现strcmp函数 (JAVA方法) 首先这不是一个多难的题,但是网上的我没怎么找到有Java的代码,基本全都是c语言的,小编是个小白,如果有不对的地方请联系小编 问题描述 ...

  5. 蓝桥杯-11-1实现strcmp函数(java)

    算法提高 11-1实现strcmp函数 时间限制:1.0s 内存限制:256.0MB问题描述自己实现一个比较字符串大小的函数,也即实现strcmp函数.函数:int myStrcmp(char *s1 ...

  6. 蓝桥杯 ADV-227 算法提高 11-1实现strcmp函数

    问题描述 自己实现一个比较字符串大小的函数,也即实现strcmp函数.函数:int myStrcmp(char *s1,char *s2) 按照ASCII顺序比较字符串s1与s2.若s1与s2相等返回 ...

  7. 【蓝桥杯Java_C组·从零开始卷】第四节(附)、字符串常用函数

    导读 本文章将java中字符串常用的字符串进行罗列与对应demo的示例,帮助java初学者与蓝桥杯参赛的选手提升对JavaSE的理解. 目录 字符串由来 字符串转成byte数组 常用字符串函数列表: ...

  8. 4.7蓝桥杯做题-心愿便利贴-消失的 Token-封装 Promisefy 函数-趣购-乾坤大挪移心法

    4.7蓝桥杯做题 文章目录 4.7蓝桥杯做题 1.心愿便利贴 2.消失的 Token 3.封装 Promisefy 函数 4.趣购 5.乾坤大挪移心法 总结: 1.心愿便利贴 在初始化的时候输入框并没 ...

  9. 蓝桥杯算法训练合集十二 1.比较2.计算最小公倍数3.比赛安排4.潜伏者5.P0702

    目录 1.比较 2.计算最小公倍数 3.比赛安排 4.潜伏者 5.P0702 1.比较 问题描述 给出一个n长的数列,再进行m次询问,每次询问询问两个区间[L1,R1],[L2,R2], 询问数列第L ...

最新文章

  1. 公众号群发文章支持添加小程序
  2. 【 FPGA 】门控时钟专题
  3. Lambda表达式有参数有返回值的练习
  4. 一周之内,如何快速摸清一个行业?
  5. 战神笔记本电脑自带access吗_书评:6本二次元小说,每一本都很有想象力,你都读过吗?...
  6. 今年蚊子有点慌!有人用100瓶花露水洗澡!
  7. 基于ASP的课外培训在线教育毕设免费下载
  8. python 中的堆栈 用列表实现
  9. Pandas+Matplotlib,深入浅出Python数据分析
  10. python编程基础及应用教程答案_Python编程基础教程
  11. [Render] Unity SRP 概述:可编写脚本的渲染管道
  12. 网络模型可视化工具netron
  13. 「津津乐道播客」#342 编码人声:跟「老」程序员们聊聊编程的历史与未来
  14. 微信小程序地区选择,单级学校选择和省,市,区选择
  15. 首屏加载,与less的初始化css
  16. 如何用uniapp+vue开发自定义相机插件——拍照+录像功能
  17. Unity Gate Fit
  18. restrict / __restrict / __restrict__ 关键字
  19. 【Unity3d】3d网页游戏场景打包与加载
  20. 小鸟云独享虚拟主机和共享虚拟主机区别对比

热门文章

  1. 如何使企业中的e-Learning价值最大化
  2. 女程序员向同事发200多条信息表白, 对方一条信息没回, 精神失常
  3. 均匀分布白噪声和高斯白噪声及其matlab产生方式
  4. 探索微前端的场景极限
  5. 【计算机网络】学习笔记:第五章 传输层【王道考研】
  6. java selection does not contain a main type_The selection does not contain a main type的解决
  7. 流行音乐界有一个人叫Michael Jackson!
  8. offsetTop、clientTop、scrollTop、offsetTop
  9. 武汉市天燃气无法正常使用--解决方法
  10. GME散户的炮灰史:GME跌超80%,WSB论坛内斗,带头大哥被查,终极赢家浮出水面...