Online Compiler C

#include <stdio.h> int main() { char a[1001] = {0}, b[1001] = {0}; int len1 = 0, len2 = 0; scanf("%s%s", a, b); for (int i = 0; a[i] != 0; i++) { len1++; } for (int i = 0; b[i] != 0; i++) { len2++; } if (len1 < len2) { printf("%d", len1); return 0; } else if (len1 > len2) { printf("%d", len2); return 0; } for (int i = 0; a[i] != '\0'; i++) { if (a[i] != b[i]) { printf("%d", i); return 0; } } printf("%d", -1); return 0; }
这段代码的功能是比较两个字符串,并输出一个整数结果。它首先计算两个字符串的长度,然后根据长度关系输出较短的长度,如果长度相等则逐字符比较,输出第一个不同字符的位置(从0开始),如果完全相等则输出-1。

- 注意:题目要求可能是输出第一个不同字符的索引,但你的代码在长度不等时直接输出较短长度,这似乎与常见的字符串比较逻辑不同。请确认题目要求是否真的是这样,还是应该输出第一个不同字符的位置(即使长度不同)?
- 另外,当长度相等且字符完全相同时,你输出-1,这可能是正确的,但请检查题目是否要求输出其他值(比如-1表示完全相等)。