问题描述
自己实现一个比较字符串大小的函数,也即实现strcmp函数。函数:int myStrcmp(char *s1,char *s2) 按照ASCII顺序比较字符串s1与s2。若s1与s2相等返回0,s1>s2返回1,s1<s2返回-1。具体来说,两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止(注意'\0'值为0,小于任意ASCII字符)。如:
"A"<"B"
"a">"A"
"computer">"compare"
"hello"<"helloworld"

样例输出

数据规模和约定
字符串长度<100。

#include <iostream>
#include <algorithm>
#include <vector>
#include <cctype>
#include <map>
using namespace std;
int f(string s1, string s2) {
    s1 += char(0);
    s2 += char(0);
    for (int i = 0; i < s1.length() && i < s2.length(); i++) {
        if (s1[i] < s2[i]) return -1;
        if (s1[i] > s2[i]) return 1;
    }
    return 0;
}
int main() {
    string s1, s2;
    cin >> s1 >> s2;
    cout << f(s1, s2);
    return 0;
}

 

更多推荐