时间限制:1s
内存限制:128MB
一般我们用strcmp
可比较两个字符串的大小,比较方法为对两个字符串从前往后逐个字符相比较(按ASCII码值大小比较),直到出现不同的字符或遇到\0
为止。如果全部字符都相同,则认为相同;如果出现不相同的字符,则以第一个不相同的字符的比较结果为准(注意:如果某个字符串遇到\0
,而另一个字符串还未遇到\0
,则前者小于后者)。
但在有些时候,我们比较字符串的大小时,希望忽略字母的大小,例如Hello
和hello
在忽略字母大小写时是相等的。请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。
输入
输入为两行,每行一个字符串,共两个字符串。(每个字符串长度都小于80)
输出
如果第一个字符串比第二个字符串小,输出一个字符
<
;如果第一个字符串比第二个字符串大,输出一个字符
>
;如果两个字符串相等,输出一个字符
=
。
样例
输入1
Hello, how are you? hello, How are you?
输出1
=
#include<bits/stdc++.h>
using namespace std;
char a[110],b[110];
int bl,r;
bool bj(char c)
{
if(c>='a'&&c<='z')
{
return true;
}
if(c>='A'&&c<='Z')
{
return true;
}
return false;
}
int main()
{
cin.getline(a,80);
cin.getline(b,80);
bl=min(strlen(a),strlen(b));
for(int i=0;i<bl;i++)
{
if(bj(a[i])&&bj(b[i]))
{
if(a[i]>='A'&&a[i]<='Z')
{
a[i]+=32;
}
if(b[i]>='A'&&b[i]<='Z')
{
b[i]+=32;
}
}
}
r=strcmp(a,b);
if(r<0)
{
printf("<");
}
else if(r>0)
{
printf(">");
}
else
{
printf("=");
}
return 0;
}