T1114 忽略大小写的字符串比较 #计蒜客 C++

T1114 忽略大小写的字符串比较

题目描述

一般我们用strcmp可比较两个字符串的大小,比较方法为对两个字符串从前往后逐个字符相比较(按 ASCII 码值大小比较),直到出现不同的字符或遇到'\0'为止。如果全部字符都相同,则认为相同;如果出现不相同的字符,则以第一个不相同的字符的比较结果为准(注意:如果某个字符串遇到'\0',而另一个字符串还未遇到'\0',则前者小于后者)。

但在有些时候,我们比较字符串的大小时,希望忽略字母的大小,例如"Hello""hello"在忽略字母大小写时是相等的。请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。

输入格式

输入为两行,每行一个字符串,共两个字符串。(每个字符串长度都小于 80且只包含大小写字母)

输出格式

如果第一个字符串比第二个字符串小,输出一个字符"<";

如果第一个字符串比第二个字符串大,输出一个字符">";

如果两个字符串相等,输出一个字符"="。

样例输入

Hellohowareyou
helloHowareyou

样例输出

 =

代码

#include <iostream>
#include <string>
#include <cstring>
using namespace std;

int main(){
    
    
	char s[90],c[90];
	cin >> s >> c;
	
	int slen = strlen(s);
	int clen = strlen(c);
	
	for(int i=0; i<slen; i++){
    
    
		if(s[i]>='A' && s[i]<='Z')
			s[i] = s[i]+32;
	}
	for(int i=0; i<clen; i++){
    
    
		if(c[i]>='A' && c[i]<='Z')
			c[i] = c[i]+32;
	}
	
 	int flag = strcmp(s,c);
    if (flag == 0) cout << "=" << endl;
    else if (flag > 0) cout << ">" << endl;
    else cout << "<" << endl;
	
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/qq_44524918/article/details/108718425