免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 5255 | 回复: 22
打印 上一主题 下一主题

[C] 请教一个c语言问题 [复制链接]

chinese2008 该用户已被删除
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-24 19:08 |只看该作者 |正序浏览
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
23 [报告]
发表于 2007-04-24 23:21 |只看该作者

  1. char buf[100];
  2. int i, n;

  3. fgets(buf, 100, stdin);
  4. buf[strlen(buf) - 1] = 0;
  5. n = atoi(buf);

  6. fgets(buf, 100, stdin);
  7. for(i = 0; i < n; ++i)
  8. {
  9.     while(1)
  10.    {
  11.          fgets(buf, 100, stdin);
  12.          if(buf[0] == '\n')
  13.                 break;
  14.          }
  15.          do_something_with_counter(buf, i);
  16.     }
  17. }
复制代码

反对求作业。

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
22 [报告]
发表于 2007-04-24 21:06 |只看该作者
原帖由 chinese2008 于 2007-4-24 20:43 发表
什么是文件结束符?能否写一下,不好意思,我是初学者。

你这也太初学了点。

用 "define:EOF" 做关键词(不包括引号)在 google 中搜索一下吧。
chinese2008 该用户已被删除
21 [报告]
发表于 2007-04-24 20:43 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
20 [报告]
发表于 2007-04-24 20:40 |只看该作者
原帖由 chinese2008 于 2007-4-24 20:38 发表
是这样的,我们有个后台编译系统,由系统提供一些测试用例来判断你的程序的对错。所以不是你自己输入,而是系统自动输入。而系统输入的例子中最后一组的最后一行之后并没有空行。

难道不能用文件结束符来结束一个测试用例的输入?
chinese2008 该用户已被删除
19 [报告]
发表于 2007-04-24 20:38 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
18 [报告]
发表于 2007-04-24 20:32 |只看该作者
原帖由 chinese2008 于 2007-4-24 20:29 发表

我的意思是输入最后一组的最后一行之后题目中并没有要求再输入空行了。

...
那就用空行或者文件结束来判定最后一个输入,总不能强行输入、100行
不要死脑筋的学。
chinese2008 该用户已被删除
17 [报告]
发表于 2007-04-24 20:29 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
95
程序设计版块每日发帖之星
日期:2015-09-05 06:20:00程序设计版块每日发帖之星
日期:2015-09-17 06:20:00程序设计版块每日发帖之星
日期:2015-09-18 06:20:002015亚冠之阿尔艾因
日期:2015-09-18 10:35:08月度论坛发贴之星
日期:2015-09-30 22:25:002015亚冠之阿尔沙巴布
日期:2015-10-03 08:57:39程序设计版块每日发帖之星
日期:2015-10-05 06:20:00每日论坛发贴之星
日期:2015-10-05 06:20:002015年亚冠纪念徽章
日期:2015-10-06 10:06:482015亚冠之塔什干棉农
日期:2015-10-19 19:43:35程序设计版块每日发帖之星
日期:2015-10-21 06:20:00每日论坛发贴之星
日期:2015-09-14 06:20:00
16 [报告]
发表于 2007-04-24 20:28 |只看该作者
原帖由 chinese2008 于 2007-4-24 20:05 发表
你能不能仔细看下题目,然后讲讲思路。我觉得题目中所要求的输入没有一个明确的结束标识。

我不说了么?仔细想想你是怎么读这个输入文件的?你怎么判断这个输入文件是否符合要求?

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
15 [报告]
发表于 2007-04-24 20:27 |只看该作者

for(i从0到组数-1)
{
    while(1)
   {
         输入一行;
      if(空行)
             跳出
     }
}
当到最后一组的时候,最外面的那个大循环已经到了最后一次循环。
输入空行,跳出那个小循环,接着因为是大循环的最后一次循环,所以最终跳出整个循环
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP