首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >K和R练习1-22

K和R练习1-22
EN

Stack Overflow用户
提问于 2013-02-10 12:30:05
回答 1查看 2.3K关注 0票数 11

我正在用C语言编写Kernighan和Ritchie的程序。

我目前在练习1-22中说:

编写一个程序,将长的输入行“折叠”成两行或更短的行,这些行发生在输入的第n列之前的last > non-blank character之后。确保您的程序具有非常长的行长度,并且如果在指定列之前没有空白或选项卡,请确保程序执行一些智能操作。

我的问题不是怎么做这个节目..。我的问题是我应该在什么地方折线。

“在最后一个非空白字符之后”是什么意思?我应该在哪里折线?

拜托伙计们别告诉我节目本身。我想自己做。

我只想知道我应该在哪一条线折叠。

编辑:还有另一个问题..。

如果我的行包含tabs怎么办?在这种情况下,行的列长度从字符长度增加。应该考虑什么长度?

编辑2

智能的东西..。为了解决标签的问题我有个主意..。

在1-22 -- 1-20和1-21之前有2次锻炼。它们是entab和detab。你们一定知道..。所以我先把线脱了,然后折起来,然后再把折线套上.我想这将是最聪明的标签。有人吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-10 12:32:39

我认为这个练习基本上是模仿你可能在文本编辑器上看到的一个“单词包装”函数。“空白”意为“空格”,例如空格或制表符。

示例:

代码语言:javascript
复制
"Once upon a time"

如果要求您在输入的第14列后“折叠”该行,则第14个字符是“时间”中的"i“。您的输出应该是两行:"Once upon a", "time"

这个问题还说,要有很长的队伍才能聪明。

例如,

代码语言:javascript
复制
"Once upon a time Once upon a time Once upon a time"

如果将该行拆分为14个字符,则应考虑行必须拆分为两行以上这一事实。

还有一种情况是,一个单词可能很长,阻止你分裂它:

代码语言:javascript
复制
"Deoxyribonucleicacid is DNA"

如果将其拆分为14个字符,则在" is"之前不会找到任何空白字符,因此单词应该被拆分。

最后,我同意这个问题有点模棱两可,但是只要您按照所需内容编写代码,您就在学习,所以我不会担心对细节过于拖延。祝你好运:)

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14797734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档