练习1-20 编写程序detab:将输入的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方

《C语言程序设计》练习1-20 编写程序detab

疑惑:主要是搞清楚制表符终止位是什么意思。
题意理解:制表符终止位可以看成是Excel单元格之间的竖线。这道题可以理解为:从键盘依次输入字符序列,往Excel单元格中填(自己想象),一个单元格的宽度为N(也就是可容纳的字符个数),当在填充单元格时输入了制表符(也就是按下tab键时)就跳到下一个单元格的开头填,如果上一个单元格没有填满,则需要用空格将其填满;如果填满了单元格时都没有遇到制表符则自动跳到下一个单元格,从头开始填充。这里就是要求用空格来填充满单元格剩下的空间, 来达在填写Excel表格中到按下tab键时的效果。
例如:
假设单元格宽度为6,如果输入了 ‘abc’三个字符后,输入制表符(\t),那么就要用3个空格将其填满;
如果输入了‘a’后输入制表符,则需要输入5个空格填满。
一种特殊情况,如果在开头就输入制表符,则需要6个空格将其填满。

所以关键是判断在当前单元格已输入了几个字符,用单元格宽度减去即可得到输入填充的空格数。
代码如下:

/* P25 练习1-20 ,编写程序detab:将输入的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方。
	制表符终止位可以看成是Excel每2个单元格之间的竖线。
	这道题的可以理解为:从键盘输入字符,往Excel单元格中填,一个单元格宽度为N,当在填充单元格输入制表符(也就是按下tab键时)
	就跳到下一个单元格开始填,如果填满了单元格都没有遇到制
  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值