下面是实现上述功能的代码:

#include <stdio.h>

int stringCompared(char *p1, char *p2) {
    while (*p1 != '\0' && *p2 != '\0') {
        if (*p1 != *p2) {
            return *p1 - *p2;
        }
        p1++;
        p2++;
    }
    return 0;
}

int main() {
    int m;
    char str1[20], str2[20];
    char *p1, *p2;
    scanf("%s", str1);
    scanf("%s", str2);
    p1 = str1;
    p2 = str2;
    m = stringCompared(p1, p2);
    printf("%d", m);
    return 0;
}

在主函数中,首先定义了两个字符串数组str1str2,然后通过scanf函数分别读取两个字符串的输入,再将指针p1p2分别指向这两个字符串。

接下来调用stringCompared函数,将p1p2传入。在stringCompared函数中,使用一个循环遍历两个字符串,当遇到第一个不同的字符时,返回它们的ASCII码差值,如果两个字符串完全相同,则返回0。最后在主函数中打印返回值。

注意,这里的比较是按照字符串的字典序进行的,即先比较第一个字符,再比较第二个字符,以此类推。

写一个函数实现两个字符串的比较。即自己写一个stringCompared函数函数原型为:int stringComparedchar p1char p2;设p1指向字符串s1p2指向字符串s2。要求当s1==s2时返回值为0当s1!=s2时返回他们两者第一个不同的字符的ASCII码差值如果s1s2则输出一个正值如果s1s2则输出一个负值。主函数为:int main int m; c

原文地址: https://www.cveoy.top/t/topic/i1ZD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录