描述
按照字典规则比较两个英文字符串的大小,基本规则如下:
(1)字符串左对齐比较
(2)字母无大小写对应关系时忽略大小写,比如’B’不仅大于’A’,也大于’a’
(3)字母有大小写对应关系时,大写小于小写,比如’A’小于’a’
(4)字符串中只有大小写字母和空格,空格小于任何字母
例如:“aBc”<“abc”,“abcdef”<“abD”,“Abcd”<“abc”
格式
输入格式
输入是两行,每行一个字符串,长度均小于1000
输出格式
输出一个整数,表示这两个字符串比较大小的结果。如果第一个小于第二个,输出-1;
如果第一个大于第二个,输出1;相等则输出0。
样例
输入样例
your
you
输出样例
1
题解及注释
就if判断把。有acsii的运用
#include <stdio.h>
#include <string.h>
int main()
{
char a[1005],b[1005];
gets(a);//获取字符串a
gets(b);//获取字符串b
int len1=strlen(a),len2=strlen(b),len;//获取字符串长度
if(len1>=len2)
{
len=len1;
}
if(len1<len2)
{
len=len2;
}
int i,flag=1;
for(i=0;i<len;i++)
{
if(65<=a[i]&&a[i]<=90)
{
if(b[i]<=90)
{
if(a[i]>b[i])
{
printf("1");
flag=0;
break;
}
else if(a[i]<b[i])
{
printf("-1");
flag=0;
break;
}
}
else if(97<=b[i])
{
b[i]=b[i]-32;
if(a[i]>b[i])
{
printf("1");
flag=0;
break;
}
else if(a[i]<=b[i])
{
printf("-1");
flag=0;
break;
}
}
}
else if(97<=a[i]&&a[i]<=122)
{
if(b[i]<=90)
{
b[i]=b[i]+32;
if(a[i]>=b[i])
{
printf("1");
flag=0;
break;
}
else if(a[i]<b[i])
{
printf("-1");
flag=0;
break;
}
}
else if(97<=b[i])
{
if(a[i]>b[i])
{
printf("1");
flag=0;
break;
}
else if(a[i]<b[i])
{
printf("-1");
flag=0;
break;
}
}
}
}
if(flag==1)
{
printf("0");
}
}
写于2021年7月22日11:25日。
如果这篇文章对你帮助很大,麻烦帮忙,点下友情链接: 鱼儿项目网(直接点这里),进去之后切换几个页面,停留几十秒。感激不尽。本站采集全网自媒体,网赚类,电商营销课程。里面有一些免费项目大家也可以看看