蓝桥杯训练:基础训练——

来源:互联网 发布:excel剪切板数据 编辑:程序博客网 时间:2024/06/08 11:31

题目描述:

问题描述:
基础练习 字符串对比
时间限制:1.0s   内存限制:512.0MB
问题描述
  给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下4中情况之一:
  1:两个字符串长度不等。比如 Beijing 和 Hebei
  2:两个字符串不仅长度相等,而且相应位置上的字符完全一致(区分大小写),比如 Beijing 和 Beijing
  3:两个字符串长度相等,相应位置上的字符仅在不区分大小写的前提下才能达到完全一致(也就是说,它并不满足情况2)。比如 beijing 和 BEIjing
  4:两个字符串长度相等,但是即使是不区分大小写也不能使这两个字符串一致。比如 Beijing 和 Nanjing
  编程判断输入的两个字符串之间的关系属于这四类中的哪一类,给出所属的类的编号。
输入格式
  包括两行,每行都是一个字符串
输出格式
  仅有一个数字,表明这两个字符串的关系编号
样例输入
BEIjing
beiJing
样例输出
3
作者:何知令
完成时间:2017年11月21日

字符串对比

代码:

#include <iostream>

#include <string>

using namespace std;

int judge(string s1,string s2)

{

   int i=0;

   int kind=2;

   while(s1[i]!='\0'&&s2[i]!='\0')

    {

       if(s1[i]==s2[i]+('A'-'a')||s1[i]==s2[i]-('A'-'a'))

            kind=3;

       else if(s1[i]!=s2[i])

           return 4;

       i++;

    }

   return kind;

}

int main()

{

   string s1,s2;

   cin>>s1>>s2;

   int L1=s1.length();

   int L2=s2.length();

   if(L1!=L2)

       cout<<1;

   else

       cout<<judge(s1,s2);;

   return 0;

}

程序运行结果:



原创粉丝点击