| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1205 人关注过本帖
标题:统计最长的单词!!
只看楼主 加入收藏
bjl2010
Rank: 2
等 级:论坛游民
帖 子:23
专家分:27
注 册:2010-12-13
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:10 
统计最长的单词!!
Problem B:最长的单词



Description

给你一个英文句子,要求输出字符串中最长的单词。若有多个最长的,只需输出第一个最长的单词即可。

Input

输入有多个句子。每个句子所包含的字符总个数不超过200个。句子中只包含字母、空格、逗号或句号。

Output

对应每个句子,输出对应的结果。每个结果占一行。

Sample Input


I am  a    student.
Bb ccc ddd a ggg.


Sample Output


student
ccc

搜索更多相关主题的帖子: 统计 单词 
2010-12-13 10:33
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:15 
这是我给你写的程序,仅供参考一下!至于能够不能够通过我可不管保证呀!嘻嘻!
程序代码:
# include <stdio.h>
# include <string.h>

char str[10000][200] ;

int main()
{
    char sentence[200] ;
    int i , j , k , max , len ;
    while(gets(sentence) != NULL)
    {
        i = 0 ;
        k = 0 ;
        for(j = 0 ; sentence[j] != '\0' ; j++)
        {
            if((sentence[j] >= 'a' && sentence[j] <= 'z') || (sentence[j] >= 'A' && sentence[j] <= 'Z'))
            {
                str[i][k] = sentence[j] ;
                if((sentence[j+1] >= 'a' && sentence[j+1] <= 'z') || (sentence[j+1] >= 'A' && sentence[j+1] <= 'Z'))
                    k++ ;
                else
                {
                    str[i][k+1] = '\0' ;
                    k = 0 ;
                    i++ ;
                }
            }
               
        }
        max = strlen(str[0]) ;
        k = 0 ;
        for(j = 0 ; j <= i ; j++)
        {
            len = strlen(str[j]) ;
            if(max < len)
            {
                max = len ;
                k = j ;
            }
        }
        puts(str[k]) ;
    }
    return 0 ;
}

愿用余生致力编程
2010-12-13 11:07
ququguoguo
Rank: 2
等 级:论坛游民
帖 子:73
专家分:90
注 册:2010-10-20
收藏
得分:0 
我是来学习的
2010-12-13 12:04
拂晓晨曦
Rank: 2
等 级:论坛游民
帖 子:87
专家分:44
注 册:2010-10-31
收藏
得分:0 
刚好也学到结构体这,共同学习把。。。。
2010-12-13 13:28
chenxihaoyun
Rank: 2
等 级:论坛游民
帖 子:19
专家分:20
注 册:2010-12-7
收藏
得分:0 
我也不会,来学学
2010-12-13 15:08
orsonzhang
Rank: 1
等 级:新手上路
帖 子:9
专家分:3
注 册:2010-12-13
收藏
得分:0 
也是来学习的
2010-12-13 16:36
Alar30
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:10
帖 子:988
专家分:1627
注 册:2009-9-8
收藏
得分:0 
来看2#的表演
呵呵
2010-12-13 16:37
bjl2010
Rank: 2
等 级:论坛游民
帖 子:23
专家分:27
注 册:2010-12-13
收藏
得分:0 
回复 2楼 我菜119
高手就是不一样!! thank you!!
2010-12-14 11:17
huidalangvip
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-11-22
收藏
得分:0 
回复 2楼 我菜119
学习 一下

保成教育 www..cn  专业司法培训机构
2010-12-15 14:01
a343637412
Rank: 7Rank: 7Rank: 7
来 自:そ ら
等 级:黑侠
帖 子:357
专家分:620
注 册:2010-9-26
收藏
得分:5 
#include <stdio.h>
#include <conio.h>
#include <string.h>

void lsdo (void);
void word (void);
void largest (void);

void main (void)
{
   printf("please input some characters\n");
  char lsdo;
  char word;
  char largest;
  return ;
}

void lsdo (void)
{
 char c;
 int letters=0,space=0,digit=0,others=0;
 while((c=getchar())!='\n')
  {
    if(c>='a'&&c<='z'||c>='A'&&c<='Z')
      letters++;
      else if(c==' ')
        space++;
        else if(c>='0'&&c<='9')
          digit++;
        else
          others++;
  }
  printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,
  space,digit,others);
}


void word (void)
{
 char string[100];
 int i,num=0,word=0;
 char c;
 gets(string);
 for(i=0;(c=string[i])!='\0';i++)
  if(c==' ') word=0;
  else if (word==0)
  {
   word=1;
   num++;
  }
     printf("There are %d words in the line.\n",num);
}


void largest (void)
{
 char string[20];
 char str[3][20];
 int i;
 for(i=0;i<10;i++)
  gets (str[i]);
 if(strcpy(str[0],str[1])>0)
  strcpy(string,str[0]);
 else
     strcpy(string,str[1]);
    if (strcmp(str[2],string)>0)
  strcpy(string,str[2]);
 printf("\nThe laegest string is:\n",string);
}




我给别人写的....功能有点乱...
2010-12-15 15:29
快速回复:统计最长的单词!!
数据加载中...
 
   



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

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