| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 401 人关注过本帖
标题:求大神详细解答,这两个差不多的程序,但其结果到底为什么不同
只看楼主 加入收藏
lvnian
Rank: 2
等 级:论坛游民
帖 子:10
专家分:12
注 册:2013-10-2
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:6 
求大神详细解答,这两个差不多的程序,但其结果到底为什么不同
1:
#include"stdio.h"
strcomp(char s[],char t[])
{
    int i;
    for(i=0;s[i]&&t[i]&&s[i]==t[i];i++)
    {   
        if(s[i]>t[i])return 1;
        else if(s[i]<t[i])return -1;
        return 0;
    }
}
main()
{
    int i,n='a';
    char str[4][10],min[10];
    printf("请输入4个字符串:\n");
    for(i=0;i<4;i++)
        {
        gets(str[i]);
        }
    for(i=0,n='a';i<4;i++,n++)
        {
        printf("你输入第%c个字符串为:\n",n);
        puts(str[i]);
        }
    strcpy(min,str[0]);
    for(i=1;i<4;i++)
        {
        if(strcomp(min,str[i])>=0)
            strcpy(min,str[i]);
        }
    printf("最小的字符串为:%s\n",min);

}

2
#include"stdio.h"
int strcomp(char s[],char t[])
{
    int i;
    for(i=0;s[i]&&t[i]&&s[i]==t[i];i++);
    {
        if(s[i]>t[i]) return 1;
        else if(s[i]<t[i]) return -1;
        return 0;
    }
}
void main()
{
    char a[4][80];
    int i,min;
    printf("输入4组字符串:\n");
    for(i=0;i<4;i++)
        gets(a[i]);
    min=0;
    for(i=1;i<4;i++)
    {
        if(strcomp(a[min],a[i])==1)
            min=i;
    }
    printf("最小字符串为:");
    puts(a[min]);
}
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册


[ 本帖最后由 lvnian 于 2013-11-27 00:11 编辑 ]
搜索更多相关主题的帖子: color 
2013-11-27 00:09
小小战士
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:569
专家分:1313
注 册:2012-11-3
收藏
得分:10 
int strcomp(char s[],char t[])
{
    int i;
    for(i=0;s[i]&&t[i]&&s[i]==t[i];i++)
    {   
        if(s[i]>t[i])return 1;
        else if(s[i]<t[i])return -1;
    }
    if(s[i]>t[i]) return 1;
    else if(s[i]<t[i])return -1;
    else return 0;
}

小小战士,战士中的战斗机!
2013-11-27 00:46
lvnian
Rank: 2
等 级:论坛游民
帖 子:10
专家分:12
注 册:2013-10-2
收藏
得分:0 
第二个程序到底是怎样比较的?,和第一个的定义的函数里的内容是一样的啊
2013-11-27 08:53
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:10 
第二个程序这句多了个分号:
for(i=0;s[i]&&t[i]&&s[i]==t[i];i++);

总有那身价贱的人给作业贴回复完整的代码
2013-11-27 08:58
lvnian
Rank: 2
等 级:论坛游民
帖 子:10
专家分:12
注 册:2013-10-2
收藏
得分:0 
回复 4楼 embed_xuel
难怪了,真心没看出来,谢谢啦
2013-11-27 09:18
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
这么快就结贴了,你知道多个分号程序是怎么运行的吗?

总有那身价贱的人给作业贴回复完整的代码
2013-11-27 09:35
zerolu
Rank: 1
等 级:新手上路
帖 子:20
专家分:9
注 册:2013-10-31
收藏
得分:0 
我竟然没看出多个;
2013-11-27 10:21
快速回复:求大神详细解答,这两个差不多的程序,但其结果到底为什么不同
数据加载中...
 
   



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

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