自定义一个strcmp函数实现两个字符串比较
时间: 2024-05-15 11:14:41 浏览: 144
好的,以下是一个简单的strcmp函数的实现:
```
int my_strcmp(const char* str1, const char* str2) {
int i = 0;
while (str1[i] != '\0' && str2[i] != '\0') {
if (str1[i] < str2[i])
return -1;
else if (str1[i] > str2[i])
return 1;
i++;
}
if (str1[i] == str2[i])
return 0;
else if (str1[i] < str2[i])
return -1;
else
return 1;
}
```
此函数将两个字符串逐个字符进行比较,如果相同则继续比较直到其中一个字符串结束,如果两个字符串相等则返回0,如果前一个字符串小于后一个字符串则返回负数,反之则返回正数。
相关问题
编写一个程序,用一个函数实现两个字符串的比较,即自己写一个strcmp函数 输入:输入两字符串 输出:输出最大的那个字符串 例如: 输入: abc abd 输出: abd
好的,我可以帮你写一个自定义的strcmp函数,实现比较两个字符串的功能。
```c++
#include <iostream>
using namespace std;
char* my_strcmp(char* str1, char* str2) {
int i = 0;
while(str1[i] == str2[i] && str1[i] != '\0') {
i++;
}
if(str1[i] > str2[i]) {
return str1;
}
else {
return str2;
}
}
int main() {
char str1[100], str2[100];
cout << "请输入字符串1:";
cin >> str1;
cout << "请输入字符串2:";
cin >> str2;
char* max_str = my_strcmp(str1, str2);
cout << "最大的字符串是:" << max_str << endl;
return 0;
}
```
以上是一个简单的自定义strcmp函数,实现了比较两个字符串的大小,并返回最大的那个字符串。你可以把这段代码复制到你的C++编辑器中,然后调用该函数进行测试,例如:
输入示例:
```
请输入字符串1:abc
请输入字符串2:abd
```
输出示例:
```
最大的字符串是:abd
```
用一个函数实现两个字符串的比较,即自己写一个strcmp函数,输出最大的那个字符串
好的,我可以帮你写一个strcmp函数来实现字符串比较,并输出最大的那个字符串。请看下面的代码实现:
```python
def my_strcmp(str1, str2):
"""
自定义strcmp函数,比较两个字符串的大小
返回值:0 表示两个字符串相等,1 表示第一个字符串大,-1 表示第二个字符串大
"""
if len(str1) > len(str2):
return 1
elif len(str1) < len(str2):
return -1
else:
for i in range(len(str1)):
if str1[i] > str2[i]:
return 1
elif str1[i] < str2[i]:
return -1
return 0
# 测试代码
str1 = input("请输入第一个字符串:")
str2 = input("请输入第二个字符串:")
result = my_strcmp(str1, str2)
if result == 0:
print("两个字符串相等")
elif result == 1:
print("最大的字符串是:", str1)
else:
print("最大的字符串是:", str2)
```
运行代码后,程序会要求输入两个字符串,然后会输出最大的那个字符串。其中,我们使用了自己编写的my_strcmp函数来比较两个字符串的大小。如果两个字符串相等,返回值为0;如果第一个字符串大,返回值为1;如果第二个字符串大,返回值为-1。根据返回值,我们就可以判断出哪个字符串更大了。
阅读全文