鱼C论坛

 找回密码
 立即注册
查看: 1623|回复: 0

[技术交流] C 输入一串单词,找出最长的单词

[复制链接]
发表于 2016-6-23 23:51:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. void main()
  2. {
  3.         char s[300];
  4.         gets(s);

  5.         //¼ÆËã3¤¶è
  6.         int len=0;
  7.         while(s[len] != '\0')
  8.         {
  9.                 len++;
  10.         }
  11.         printf("%d\n",len);

  12.         int j=0;  //¼Ç¼ÿ¸öμ¥′êμÄ3¤¶è
  13.         int n=0;  //¼Ç¼éÏ′οոñμÄλÖÃ
  14.         char *t;  //′æ·Åμ±Ç°×î3¤μÄμ¥′ê
  15.         int maxLen = 0; //′æ·Åμ±Ç°×î3¤μ¥′êμÄ3¤¶è


  16.         //¿aê¼
  17.         for(int i=0; i<len; i++)
  18.         {
  19.                 //&#213;òμ&#189;&#191;&#213;&#184;&#241;£&#172;±íê&#190;&#191;&#213;&#184;&#241;&#199;°&#195;&#230;μ&#196;×&#214;·&#251;′&#174;&#206;aμ¥′ê£&#172;è&#231;1&#251;ê&#199;×&#238;oóò&#187;&#184;&#246;×&#214;&#196;&#184; ò2&#189;&#248;à′
  20.                 if(s[i] == ' ' || i==len-1)
  21.                 {
  22.                         if(i==len-1) //è&#231;1&#251;ê&#199;×&#238;oóò&#187;&#184;&#246;×&#214;&#196;&#184;
  23.                         {
  24.                                 i++;    //μ±&#199;°μ¥′êμ&#196;&#189;áê&#248;μ&#216;·&#189;
  25.                                 j++;
  26.                         }

  27.                         char *s2 = new char[j+1];  //±£′&#230;μ±&#199;°μ¥′ê
  28.                         int k=n;                                   //&#187;&#241;μ&#195;é&#207;′&#206;μ&#196;&#191;&#213;&#184;&#241;&#206;&#187;&#214;&#195;£&#172;ò2&#190;íê&#199;é&#207;&#184;&#246;μ¥′ê×&#238;oóμ&#196;&#191;&#213;&#184;&#241;&#206;&#187;&#214;&#195;
  29.                         int l=0;                                   //&#209;-&#187;·±&#228;á&#191;

  30.                         //&#191;aê&#188;&#198;′&#189;óμ¥′ê
  31.                         while((k+l)<i)                          
  32.                         {
  33.                                 s2[l] = s[k+l];
  34.                                 l++;
  35.                         }
  36.                
  37.                         s2[l] = '\0';   //×&#214;·&#251;′&#174;&#189;áê&#248;±ê&#214;&#190;

  38.                         if(maxLen < j)  //è&#231;1&#251;é&#207;′&#206;±£′&#230;μ&#196;×&#238;′óμ&#196;3¤&#182;è£&#172;D&#161;óúμ±&#199;°μ¥′êμ&#196;3¤&#182;è£&#172;&#190;íì&#230;&#187;&#187;
  39.                         {
  40.                                 maxLen = j;
  41.                                 t = s2;
  42.                         }
  43.                         j = 0;                //&#199;&#229;&#191;&#213;3¤&#182;è
  44.                         n = i+1;        //&#188;&#199;&#194;&#188;±&#190;′&#206;&#191;&#213;&#184;&#241;&#206;&#187;&#214;&#195;£&#172;o&#195;è&#195;&#207;&#194;′&#206;&#209;-&#187;·
  45.                 }else
  46.                 {
  47.                         j++;  //&#188;&#198;&#203;&#227;μ±&#199;°μ¥′êμ&#196;3¤&#182;è
  48.                 }
  49.                
  50.         }
  51.         printf("×&#238;3¤μ&#196;μ¥′ê&#206;a:%s\n3¤&#182;è&#206;a:%d",t,maxLen);

  52. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 12:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表