C语言在主函数中调用gets 函数输入2个字符串,调用函数myStrcmp比较,输出该函数的返回值实现字符串比较的功能
时间: 2023-11-28 07:47:56 浏览: 82
字符串练习
下面是实现该功能的C语言代码:
```c
#include <stdio.h>
int myStrcmp(char* str1, char* str2);
int main() {
char str1[100], str2[100];
printf("请输入字符串1:");
gets(str1);
printf("请输入字符串2:");
gets(str2);
int result = myStrcmp(str1, str2);
printf("字符串比较的结果为:%d\n", result);
return 0;
}
int myStrcmp(char* str1, char* str2) {
int i = 0;
while (str1[i] != '\0' || str2[i] != '\0') {
if (str1[i] != str2[i]) {
return str1[i] - str2[i];
}
i++;
}
return 0;
}
```
首先,在主函数中定义了两个字符串数组 `str1` 和 `str2`,并使用 `gets` 函数分别读取用户输入的两个字符串。
接着,调用函数 `myStrcmp` 对两个字符串进行比较,并将比较的结果保存在变量 `result` 中。
最后,将比较的结果输出到屏幕上。在函数 `myStrcmp` 中,首先使用 while 循环对两个字符串逐个字符进行比较,如果发现有字符不相同,则返回其 ASCII 码的差值;如果所有字符都相同,则返回 0。
需要注意的是,在实际应用中,使用 `gets` 函数可能存在安全隐患,因为它无法保证输入的字符串长度不超过数组的大小。在实际开发中,建议使用更加安全的输入函数 `fgets`。
阅读全文