24小时热门版块排行榜    

查看: 528  |  回复: 5

lyle1993

新虫 (初入文坛)

[求助] 真诚求教

编写一个程序,比较两个字符串的大小,实现strcmp函数相同的功能,但不能直接使用strcmp函数。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

11jxli1

禁虫 (著名写手)

感谢参与,应助指数 +1
本帖内容被屏蔽

2楼2012-12-24 10:22:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

615780236

禁虫 (知名作家)

感谢参与,应助指数 +1
本帖内容被屏蔽

3楼2012-12-24 18:33:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

感谢参与,应助指数 +1
就是个挨着判断,等于输出0,大于输出1,小于输出-1
CODE:
#include
#include

int myStrCmp(const char *str1, const char *str2)
{
    int ret = 0;
    while (*str1!=0 && *str2!=0)
    {
        if (*str1>*str2)
        {
            ret = 1;
            break;
        }
        else if (*str1<*str2)
        {
            ret = -1;
            break;
        }
        str1++;
        str2++;
    }

    if (ret==0)
    {
        if (*str1==0 && *str2!=0)
        {
            ret = -1;
        }
        else if (*str1!=0 && *str2==0)
        {
            ret = 1;
        }
    }
    return ret;
}

int main()
{
    char *s1 = "test 1";
    char *s2 = "test 2";
    char *s3 = "test 1";
    char *s4 = "test";
    printf("Implemented myStrCmp():\ns1,s2: %d\ns1,s3: %d\ns1,s4: %d\n",myStrCmp(s1,s2),myStrCmp(s1,s3),myStrCmp(s1,s4));
    printf("Original strcmp():\ns1,s2: %d\ns1,s3: %d\ns1,s4: %d\n",strcmp(s1,s2),strcmp(s1,s3),strcmp(s1,s4));
  

测试结果:
CODE:
Implemented myStrCmp():
s1,s2: -1
s1,s3: 0
s1,s4: 1
Original strcmp():
s1,s2: -1
s1,s3: 0
s1,s4: 1

Process returned 0 (0x0)   execution time : 0.000 s
Press any key to continue.

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
4楼2012-12-25 21:28:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

上面的代码少了2行
CODE:
#include
#include

int myStrCmp(const char *str1, const char *str2)
{
    int ret = 0;
    while (*str1!=0 && *str2!=0)
    {
        if (*str1>*str2)
        {
            ret = 1;
            break;
        }
        else if (*str1<*str2)
        {
            ret = -1;
            break;
        }
        str1++;
        str2++;
    }

    if (ret==0)
    {
        if (*str1==0 && *str2!=0)
        {
            ret = -1;
        }
        else if (*str1!=0 && *str2==0)
        {
            ret = 1;
        }
    }
    return ret;
}

int main()
{
    char *s1 = "test 1";
    char *s2 = "test 2";
    char *s3 = "test 1";
    char *s4 = "test";
    printf("Implemented myStrCmp():\ns1,s2: %d\ns1,s3: %d\ns1,s4: %d\n",myStrCmp(s1,s2),myStrCmp(s1,s3),myStrCmp(s1,s4));
    printf("Original strcmp():\ns1,s2: %d\ns1,s3: %d\ns1,s4: %d\n",strcmp(s1,s2),strcmp(s1,s3),strcmp(s1,s4));
    return 0;
}

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
5楼2012-12-25 21:28:54
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

布瓜的世界

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
其实就是要自己写一个strcmp函数就是了
简约之上
6楼2012-12-25 22:05:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lyle1993 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +9 Ldrop2023 2026-08-13 9/450 2026-08-16 13:24 by wukun_007
[基金申请] 欢迎发来filecode的Mz6后的代码验证其规律 +32 医学老男孩 2026-08-13 72/3600 2026-08-16 13:15 by 医学老男孩
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 时间戳又变了8-15 +12 archvillain 2026-08-15 23/1150 2026-08-15 20:47 by foyo404
[基金申请] filecode=后面第一个是大写字母 +6 wangze12014 2026-08-14 7/350 2026-08-15 20:12 by gltch
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 各位道友,我要去昆明玩几天,回来见。 +7 Tide man 2026-08-14 8/400 2026-08-15 01:11 by arzu_hma
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +11 yufeiwaner 2026-08-09 13/650 2026-08-12 08:17 by yufeiwaner
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
信息提示
请填处理意见