题目:编写一个函数,以大小写不敏感方式计算字符串的不相同的第一个字符的位置(位置从0开始计算),如果两个字符串相同,则返回-1;
输入:两个字符串,中间以’,’分隔
输出:不相同的第一字符的位置
样例输入:hello world,Hello World
样例输出:-1
#include<iostream>
#include<string>
#include<cctype>
using namespace std;
int cmp(string a,string b)
{
string::size_type i=0;
for(i=0;i<a.size() && i<b.size();i++)
{
if(a[i]==b[i])
i++;
else if(isalpha(a[i]) && isalpha(b[i]))
{
if(tolower(a[i])==tolower(b[i]))
i++;
else
return i;
}
else
{
if(a[i]!=b[i])
return i;
}
}
return -1;
}
int main()
{
string s1,s2;
getline(cin,s1,',');
getline(cin,s2);
cout<<cmp(s1,s2)<<endl;
}