鱼C论坛

 找回密码
 立即注册
查看: 963|回复: 4

[已解决]小白求助,求一句英语中的 最长单词,求解下面程序问题出错的地方,

[复制链接]
发表于 2021-11-28 20:28:11 | 显示全部楼层 |阅读模式

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

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

x
#include <stdio.h>
main()
{
        int i,j,d[4000][2],k,m;
        char s[2000],ch;
        for(i=1;((ch=getchar())!='\n');i++)
        {
                s[i]=ch;
        }
        for(k=1; ;k++)
        {
                for(j=i; ; i++)
                {
                        if(ch==' ')
                        d[k][1]=j;
                    d[k][0]=j-i;
                }
        }
        for(m=d[0][0],i=1;i<=k;i++)
        {
                if(d[k][0]>m)
                m=d[k][0];
        }
        for(i=0;i<=d[k][0];i++)
        {
                putchar(s[d[k][1]+i]);
        }
}
最佳答案
2021-11-28 21:09:59
本帖最后由 jackz007 于 2021-11-28 21:59 编辑

        真就那么简单???
        你的代码错的实在离谱万里!!!
  1. int main(void)
  2. {
  3.         int i , j , d[4000][2] , k , m                           ;
  4.         char s[2000] , ch                                        ;
  5.         for(m = 0 ; ((ch = getchar())!='\n') ; m ++) s[m] = ch   ;
  6.         for(i = k = 0 ; i < m ; i = j , k ++)
  7.         {
  8.                 for(; i < m ; i ++)
  9.                 {
  10.                         if(s[i] != ' ') break                    ;
  11.                 }
  12.                 for(j = i ; j < m ; j ++)
  13.                 {
  14.                         if(s[j] == ' ') break                    ;
  15.                 }
  16.                 d[k][1] = i                                      ;
  17.                 d[k][0] = j - i                                  ;
  18.         }
  19.         for(m = d[0][0] , i = 1 ; i < k ; i ++)
  20.         {
  21.                 if(d[i][0] > m) m = d[i][0]                      ;
  22.         }
  23.         for(i = 0 ; i < k ; i ++)
  24.         {
  25.                 if(d[i][0] == m)
  26.                 {
  27.                         for(j = 0 ; j < d[i][0] ; j ++)
  28.                         {
  29.                                 putchar(s[d[i][1] + j])          ;
  30.                         }
  31.                 }
  32.         }
  33. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-11-28 21:09:59 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2021-11-28 21:59 编辑

        真就那么简单???
        你的代码错的实在离谱万里!!!
  1. int main(void)
  2. {
  3.         int i , j , d[4000][2] , k , m                           ;
  4.         char s[2000] , ch                                        ;
  5.         for(m = 0 ; ((ch = getchar())!='\n') ; m ++) s[m] = ch   ;
  6.         for(i = k = 0 ; i < m ; i = j , k ++)
  7.         {
  8.                 for(; i < m ; i ++)
  9.                 {
  10.                         if(s[i] != ' ') break                    ;
  11.                 }
  12.                 for(j = i ; j < m ; j ++)
  13.                 {
  14.                         if(s[j] == ' ') break                    ;
  15.                 }
  16.                 d[k][1] = i                                      ;
  17.                 d[k][0] = j - i                                  ;
  18.         }
  19.         for(m = d[0][0] , i = 1 ; i < k ; i ++)
  20.         {
  21.                 if(d[i][0] > m) m = d[i][0]                      ;
  22.         }
  23.         for(i = 0 ; i < k ; i ++)
  24.         {
  25.                 if(d[i][0] == m)
  26.                 {
  27.                         for(j = 0 ; j < d[i][0] ; j ++)
  28.                         {
  29.                                 putchar(s[d[i][1] + j])          ;
  30.                         }
  31.                 }
  32.         }
  33. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-28 21:54:41 | 显示全部楼层
jackz007 发表于 2021-11-28 21:09
真就那么简单???
        你的代码错的实在离谱万里!!!

我这不是想试试想简单点,把输入情况想成平时输出英文习惯,试试看。结果还是难
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-28 22:00:22 | 显示全部楼层
jackz007 发表于 2021-11-28 21:09
真就那么简单???
        你的代码错的实在离谱万里!!!

不对劲啊,我输入啥,他就输出啥。没输出最长单词
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-28 22:01:25 | 显示全部楼层
小黄练编程 发表于 2021-11-28 22:00
不对劲啊,我输入啥,他就输出啥。没输出最长单词

      2 楼的代码现在再试
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-25 13:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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