| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 522 人关注过本帖
标题:自己写的比较一串数大小的自定义函数。。但有个bug改不过来
只看楼主 加入收藏
Sornets
Rank: 2
等 级:论坛游民
帖 子:102
专家分:61
注 册:2012-11-22
收藏
得分:0 
回复 4楼 StarFall
什么意思。。
2012-11-30 13:14
laoA
Rank: 2
等 级:论坛游民
帖 子:24
专家分:59
注 册:2012-11-18
收藏
得分:0 
看样子是a[i]==b[i]=='\0'这句错了吧?
2012-11-30 15:13
laoA
Rank: 2
等 级:论坛游民
帖 子:24
专家分:59
注 册:2012-11-18
收藏
得分:0 
#include<stdio.h>
#include<string.h>

int cmp(char *,char *);

int main(void)
{
    int c;
    char a[10],b[10];
    printf("Please enter your string.\n");
    gets(a);
    gets(b);
    puts("The string you entered is:");
    puts(a);
    puts(b);
    c=cmp(a,b);
    if(c==1)
        printf("the string \"%s\" is bigger than the string \"%s\".",a,b);
    else
        printf("the string \"%s\" is bigger than the string \"%s\".",b,a);

    printf("%d",c);
    return 0;




}

int cmp(char *ptr1,char *ptr2)
{
    int flag;

    if(strlen(ptr1)!=strlen(ptr2))
    {
        flag=(strlen(ptr1)>strlen(ptr2))?1:-1;
        return flag;

    }
    else
    {
        while((*ptr1!='\0') && (*ptr2!='\0'))
        {
            if(*ptr1>*ptr2)
            {
                flag=1;
                return flag;
            }
            else if(*ptr1<*ptr2)
            {
                flag=-1;
                return flag;
               
            }
            else
            {
                ptr1++;
                ptr2++;

            }

        }
        return -1;

    }

   
}
我写的一个,大家有空批一下啊
2012-11-30 15:41
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用laoA在2012-11-30 15:41:28的发言:

#include
#include
 
int cmp(char *,char *);
 
int main(void)
{
    int c;
    char a[10],b[10];
    printf("Please enter your string.\n");
    gets(a);
    gets(b);
    puts("The string you entered is:");
    puts(a);
    puts(b);
    c=cmp(a,b);
    if(c==1)
        printf("the string \"%s\" is bigger than the string \"%s\".",a,b);
    else
        printf("the string \"%s\" is bigger than the string \"%s\".",b,a);
 
    printf("%d",c);
    return 0;
 
 
 
 
}
 
int cmp(char *ptr1,char *ptr2)
{
    int flag;
 
    if(strlen(ptr1)!=strlen(ptr2))
    {
        flag=(strlen(ptr1)>strlen(ptr2))?1:-1;
        return flag;
 
    }
    else
    {
        while((*ptr1!='\0') && (*ptr2!='\0'))
        {
            if(*ptr1>*ptr2)
            {
                flag=1;
                return flag;
            }
            else if(*ptr1<*ptr2)
            {
                flag=-1;
                return flag;
                 
            }
            else
            {
                ptr1++;
                ptr2++;
 
            }
 
        }
        return -1;
 
    }
 
     
}
我写的一个,大家有空批一下啊

用到了strlen这个库函数  嘿嘿  不用库函数试试

DO IT YOURSELF !
2012-11-30 15:56
快速回复:自己写的比较一串数大小的自定义函数。。但有个bug改不过来
数据加载中...
 
   



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

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