标题:求助,简单c,为什么这个结果和逻辑不符啊
只看楼主
来世做飞鸟
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2018-5-1
结帖率:0
已结贴  问题点数:1 回复次数:1 
求助,简单c,为什么这个结果和逻辑不符啊
#include<stdio.h>
#include<string.h>
int strCompete(char *s,char *t)
{
    if(s&&t)
    {
        int s1=strlen(s),t1=strlen(t),i=0;
        while((s[i]!='\0')&&(t[i]!='\0'))
        {
            if(s[i]<t[i])
                return -1;
            if(s[i]==t[i])
            {
                i++;
            
            }
            if(s[i]>t[i])
                return 1;
            i++;
        }
        if(s1<t1)
            return -1;
        if(s1==t1)
            return 0;
        if(s1>t1)
            return 1;
   
    }

}
int main()
{
    char str1[]={"abc"};
    char str2[]={"acc"};
    int a;
    a=strCompete(str1,str2);
    printf("%d\n",a);
    return 0;

}
搜索更多相关主题的帖子: 结果 逻辑 int char return 
2018-05-01 11:39
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:1 
#include<stdio.h>
#include<string.h>
int strCompete(char *s,char *t)
{
    if(s&&t)
    {
        int s1=strlen(s),t1=strlen(t),i=0;
        while((s[i]!='\0')&&(t[i]!='\0'))
        {
            if(s[i]<t[i])
                return -1;
            else if(s[i]>t[i])
                return 1;
            i++;
        }
        if(s[i]==t[i])
            return 0;
        else if(s[i]<t[i])
            return -1;
        else
            return 1;
    }
}
int main()
{
    char str1[]= {"abc"};
    char str2[]= {"abc"};
    int a;
    a=strCompete(str1,str2);
    printf("%d\n",a);
    return 0;

}
2018-05-01 19:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-486533-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015136 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved