| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 694 人关注过本帖
标题:求单词个数的,请帮忙改错!
只看楼主 加入收藏
树上月
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:114
专家分:154
注 册:2010-1-6
结帖率:87.5%
收藏
已结贴  问题点数:20 回复次数:4 
求单词个数的,请帮忙改错!
求单词个数 可以有多个空格(要在Vc下运行):
# include <stdio.h>
int main (void)
{
 int str[80],i,j,count=0;
 printf("Enter strings:");
 i=0;
 while((str[i]=getchar())!='\n')
  i++;
 str[i]='\0';
 for(i=0;str[i]!='\0';i++)
  if(str[i]==' ')
   for(j=i+1;str[i]!='\0';j++)
    if(str[j]!=' '){
     count++;
     i=j+1;
    }
 printf("count=%d\n",count);
 return 0;
}   
搜索更多相关主题的帖子: 改错 单词 
2010-01-11 11:15
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:8 
  
给你个思路·那就是···
遇到第一个空格是就应该计数之后再遇到空格跳过·直到下一个字符不是空格也不是控制符在处理下一个单词
还有就是····
能简单就简单(老师对我说的)
题目没要就一个个字符读入的话还是直接输入就好。
  如此定义
char str[256];
    int i,j,count=0;


[ 本帖最后由 jiangwu10057 于 2010-1-11 13:17 编辑 ]
2010-01-11 13:11
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:12 
#include<stdio.h>
main()
{
    char str[256];
    int i,j,count=1;

    printf("Enter strings:");
    gets(str);
    for(i=0;str[i]!='\0';)
    {
        if(str[i]==' '&&i>0)
        {
            count++;
            for(j=i+1;str[i]!='\0';j++)
                if(str[j]!=' ')
                {
                    i=j;
                    break;
                }
        }
        else
            i++;
    }
    printf("count=%d\n",count);
}
这个是我的代码·试试吧·
2010-01-11 13:32
gao2951713
Rank: 2
等 级:论坛游民
帖 子:23
专家分:36
注 册:2009-12-28
收藏
得分:0 
不是吧?又要用递归才能做出来啊!恼火!
2010-01-11 13:54
qingzhu5753
Rank: 4
等 级:业余侠客
帖 子:64
专家分:248
注 册:2009-10-28
收藏
得分:0 
for(i=0;str[i]!='\0';i++)
{
  if(str[i]==' '&&str[i]!=' ')
        count++;
   
  if(str[i+1]=='\0')
        break;
}
2010-01-14 15:20
快速回复:求单词个数的,请帮忙改错!
数据加载中...
 
   



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

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