标题:统计相同长度单词的个数,询问下错误
只看楼主
huang__mz
Rank: 2
等 级:论坛游民
帖 子:9
专家分:26
注 册:2010-8-28
结帖率:50%
已结贴  问题点数:10 回复次数:3 
统计相同长度单词的个数,询问下错误
#include<stdio.h>
int main()
{
    int t;
    scanf("%d",&t);
    getchar();
    while(t--)
    {
        int n;
        int count=0,j=0;
        scanf("%d",&n);
        getchar();
        char c[80];
        gets(c);
        for(int i=0;(c[i]!='\0');i++)
        {
            if((c[i]!=' '))
            {
                ++count;
            if(count==n)
                    j++;
            }
            else
            count=0;
        }
            printf("%d\n",j);
    }
    return 0;
}
例如
第一行输入3表示有三个测试数组
第二行输入5表示求长度是5的单词的个数
输入hello world
输出结果为2
intput
3
5
hello world
5
acm is a hard game
3
acm is a hard game
Output
2
0
1

搜索更多相关主题的帖子: 单词 长度 询问 统计 
2010-08-28 15:50
erikyo
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:270
专家分:1154
注 册:2010-6-10
得分:5 
我没发现有什么问题啊,
hello world 长度是5,输出2
acm is a hard game中没有长度是5的单词,输出0
acm is a hard game中就acm是长度为3的,输出1
完全正确啊
2010-08-28 16:15
ppfly
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:297
专家分:1956
注 册:2009-5-17
得分:5 
第一,修改你的代码for循环里面的语句;
第二,仅仅考虑if((c[i]!=' '))是不够的,因为忽略了最后一个单词的长度,所以在printf("%d\n",j);语句的前面添加if(c[i]=='\0' && count==n)的判断。
修改后的代码如下:
程序代码:
#include<stdio.h>
int main()
{
    int t;
    scanf("%d",&t);
    getchar();
    while(t--)
    {
        int n;
        int count=0,j=0;
        scanf("%d",&n);
        getchar();
        char c[80];
        gets(c);
        for(int i=0;(c[i]!='\0');i++)
        {
            if(c[i]!=' ')
                count++;
            else
            {
                if (count==n)
                    j++;
                count=0;
            }
        }
        if(c[i]=='\0' && count==n)
            j++;
        printf("%d\n",j);
    }
    return 0;
}


 

********多贴代码,少说空话*******
2010-08-28 16:37
huang__mz
Rank: 2
等 级:论坛游民
帖 子:9
专家分:26
注 册:2010-8-28
得分:0 
知道了 就是if(c[i]=='\0' && count==n)没有考虑然后改不好了
2010-08-28 16:55



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




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

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