题目:
请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。
输入格式
输入为两行,每行一个字符串,共两个字符串。注意字符串中可能包含空格。
数据保证每个字符串的长度都不超过 80。
输出格式
如果第一个字符串比第二个字符串小,输出一个字符 <
。
如果第一个字符串比第二个字符串大,输出一个字符 >
。
如果两个字符串相等,输出一个字符 =
。
#include<cstdio>
#include<iostream>
#include<cstring>
#include<string>
using namespace std;
int main() {
char a[100], b[100];
fgets(a, 100, stdin);//fgets(char *str, int n, FILE *stream),读一行,可能读到‘\n’(ascii=10)
fgets(b, 100, stdin);
if(a[strlen(a)-1]=='\n') a[strlen(a)-1]=0;//strlen(char *s)
if(b[strlen(b)-1]=='\n') b[strlen(b)-1]=0;
//cout<<(int)a[59]<<endl;为NULL(ascii=0)
for (int i = 0; a[i]; i++) {//直接用a[i]判断
if (a[i] >= 'A' && a[i] <= 'Z') {
a[i] = a[i] + 32;
}
}
for (int i = 0; b[i]; i++) {
if (b[i] >= 'A' && b[i] <= 'Z') {
b[i] = b[i] + 32;
}
}
if (strcmp(a, b) > 0) cout << ">" << endl;//strcmp(const char *str1, const char *str2)前减后,字典序减
else if (strcmp(a, b) == 0) cout << "=" << endl;
else cout << "<" << endl;
return 0;
}
示例:
题源:AcWing