大文字と小文字を区別しないT1114文字列比較
タイトル説明
一般に、strcmp
2つの文字列のサイズを比較できます。比較方法は、異なる文字が表示されるか、遭遇するまで、2つの文字列を文字ごとに前から後ろに比較します(ASCIIコード値に従って比較します)'\0'
。すべての文字が同じである場合、それらは同じであると見なされます。異なる文字が表示される場合、最初の異なる文字の比較結果が優先されます(注:文字列が検出され'\0'
、別の文字列がまだ検出されていない場合)に'\0'
、前者は後者よりも小さい)。
ただし、文字列のサイズを比較するときに、たとえば文字のサイズを無視したい場合"Hello"
や"hello"
、大文字と小文字が等しい場合があります。文字の大文字小文字を無視して、2つの文字列の大文字小文字を比較するプログラムを作成してください。
入力フォーマット
入力は2行、1行に1文字、合計2文字です。(各文字列の長さは80未満で、大文字と小文字のみが含まれます)
出力フォーマット
最初の文字列が2番目の文字列よりも小さい場合は、文字「<」を出力します。
最初の文字列が2番目の文字列よりも大きい場合は、文字 ">";を出力します。
2つの文字列が等しい場合、文字「=」が出力されます。
サンプル入力
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;
}