| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 452 人关注过本帖
标题:错哪里了
只看楼主 加入收藏
caiznen
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-11-25
收藏
 问题点数:0 回复次数:1 
错哪里了
请大家看下错哪里了,题目是将字符串的最长的单词输出,谢谢

#include <stdio.h>
void main()
{
    void hs(char x[100],char y[100]);
    char a[100],b[100];
    gets(a);
    hs(a,b);
    printf("最长的单词是%s\n",b);
}
void hs(char x[100],char y[100])
{
    int i,j=0,k,max=0;
    for (i=0;i<=99;i++)
    {
        if(x[i]!=32&&x[i]!='\0')
            j=j+1;
        else if(j>max)
        {
            max=j;
            k=i;
            j=0;
        }
        if(x[i]=='\0')
            break;
    }
    for (i=0;i<=max-1;i++)
        y[i]=x[k-max+i];
    y[max]='\0';
}
搜索更多相关主题的帖子: c语言 
2008-11-25 20:45
biancheng1998
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2008-11-30
收藏
得分:0 
调用函数hs(a,b)时,a,b应该都是实参,也即是应该有初值,而hs(a,b)是b仍然是形参,void hs(char x[100],char y[100]);改成void hs(char x[100]),在hs是完成就行了
2008-12-02 09:17
快速回复:错哪里了
数据加载中...
 
   



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

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