| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 10428 人关注过本帖
标题:比较两个字符串的长度
只看楼主 加入收藏
笨女孩
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2011-7-13
结帖率:100%
收藏
已结贴  问题点数:14 回复次数:11 
比较两个字符串的长度
#include<stdio.h>
char *fun(char *s,char *t)
{
    int i,j=0,k=0;
    for(i=0;i<20;i++)
    {
        if(s[i]!='\0')
            j++;
        if(t[i]!='\0')
            k++;
    }
    if(j>=k)
        return s;
    else
        return t;
}
void main()
{
    char a[20],b[20];
    printf("input 1th string:");
    gets(a);
    printf("input 2th string:");
    gets(b);
    printf("%s\n",fun(a,b));
}


这个函数是比较两个字符串的长度,长度相等时返回第一个字符串。但我不知道哪里错了,看了很久还是查不出来
搜索更多相关主题的帖子: void 函数 include return 字符串 
2012-03-08 18:49
share32
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:214
专家分:663
注 册:2011-12-1
收藏
得分:14 
程序代码:
#include<stdio.h>

 char *fun(char *s,char *t)

 {
     int i,j=0,k=0;
     for(i=0;i<20;i++)
     {
         if(s[i]=='\0' && t[i]!='\0')    这里判断完应该马上return,否则会继续循环,检查后面的位置量,这样会导致j=k。
             return t;
         if(t[i]=='\0')
             return s;
     }

 }

 void main()

 {
     char a[20],b[20];
     printf("input 1th string:");
     gets(a);
     printf("input 2th string:");
     gets(b);
     printf("%s\n",fun(a,b));

 }
2012-03-08 20:40
zaixuexi
Rank: 12Rank: 12Rank: 12
来 自:上海
等 级:火箭侠
威 望:8
帖 子:858
专家分:3233
注 册:2010-12-1
收藏
得分:0 
看什么看,调一调啊

技术问题,请不要以短消息方式提问
2012-03-08 20:55
zjkedy
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:46
专家分:131
注 册:2010-5-14
收藏
得分:0 
错什么了? 还是说没显示出来?  加个 gets 让控制台 显示,要不这个程序结束 就没了! 只是你来不及看到结果 或者加个头文件#include <stdlib.h>,在最后加上    system("pause");
2012-03-08 21:52
zxd675816777
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:252
专家分:631
注 册:2012-2-3
收藏
得分:0 
你用的什么编译器额?不会是dev吧?

数学好难!
2012-03-08 22:02
一块五
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-3-8
收藏
得分:0 
有难度的,
2012-03-08 22:17
chan_
Rank: 3Rank: 3
来 自:武汉
等 级:论坛游侠
帖 子:84
专家分:122
注 册:2012-2-29
收藏
得分:0 
不用函数可以做,
用了函数为什么显示Function should return a value呢!!
2012-03-08 22:38
yupeisx
Rank: 1
等 级:新手上路
帖 子:20
专家分:8
注 册:2012-3-7
收藏
得分:0 
您好,我在VC++6.0 运行你的程序是正确的啊 ??
2012-03-08 22:41
于祥
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1047
专家分:4132
注 册:2011-4-24
收藏
得分:0 
不能直接返回字符串吧?

最基础的往往是你最容易忽略的!
2012-03-08 23:19
笨女孩
Rank: 1
等 级:新手上路
帖 子:58
专家分:0
注 册:2011-7-13
收藏
得分:0 
回复 5楼 zxd675816777
VC++
2012-03-09 12:55
快速回复:比较两个字符串的长度
数据加载中...
 
   



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

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