搜索
写经验 领红包
 > 生活

字符串怎么比较而且是多个比较(字符串长度比较)

导语:字符串比较多实例

字符串怎么比较而且是多个比较(字符串长度比较)

ICPC--1155: 字符串比较多实例

题目描述

比较字符串大小,但比较的规则不同字典序规则。字符比较新规则如下:A < a < B < b < ………… < Z < z。

输入

输入数据包含多个测试实例,每个测试实例占两行,每一行有一个字符串(只包含大小写字母, 长度小于10000)。

输出

如果第一个字符串小于第二个,输出YES,否则,输出NO。 注意:A < a < B < b < ………… < Z < z。

样例输入

abcBbcAbaABcefABce

样例输出

YESYESNO

代码

include<string.h>int main(){    char buf1[10001], buf2[10001];    int len1, len2,len;    double num1, num2;  //数字化表示的结果    while (scanf(,buf1,buf2)!=EOF)    {        len1 = strlen(buf1);        len2 = strlen(buf2);        len = len1 > len2 ? len1 : len2;        for (int i = 0; i < len+1; i++) // len+1 表示考虑两个串的末尾 &39;        {            if (buf1[i] >= &39;&&buf1[i] <= &39;){                num1 = (int)(buf1[i] - &39;)-0.5;            }            else if (buf1[i]>=&39;&&buf1[i]<=&39;)            {                num1 = (int)(buf1[i] - &39;);            }            else            {                num1 = -1;  //比较到了 &39; ,结果应该是NO ,故第一个应大于第二个数字            }                        if (buf2[i] >= &39;&&buf2[i] <= &39;){                num2 = (int)(buf2[i] - &39;) - 0.5;            }            else if (buf2[i] >= &39;&&buf2[i] <= &39;)            {                num2 = (int)(buf2[i] - &39;);            }            else            {                num2 = -2; //比较到了 &39;,结果应该是NO,故第二个应该小于第一个数字            }             if (num1<num2)            {                printf();                break;            }            else if (num1>num2)            {                printf();                break;            }        }        memset(buf1, &39;, 10001);        memset(buf2, &39;, 10001);    }}

ICPC--1156: 单数变复数

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请反馈,一经查实立刻删除内容。本文内容由快快网络小馨创作整理编辑!