12、指定长度替换制表符

 1 /*
 2     将输入中的制表符替换成适当数目空格(*号),指定终止位置
 3     例如:指定下一个制表符终止位出想在输入长度100处,
 4     则,当输入1+‘\t’,输出为1+99个‘*’。
 5     1、获取输入内容
 6     2、记录当前输入为第几个字符(每N个一循环进行计数)
 7     3、当前输入为‘\t’
 8     4、计算终止位
 9     5、输出替换符
10     6、当前输入为‘\n’
11     7、重置计数
12     8、当前输入为正常符号
13     9、正常输出,等待进入替换循环
14 */
15 
16 #include <stdio.h>
17 
18 #define LENGTH 5             //指定终止长度5
19 
20 int main()
21 {
22     int c, p;                //输入,当前距指定位置长度
23 
24     p = 0;
25 
26     while ((c=getchar()) != EOF)
27     {
28         if (c == '\t')
29         {
30             p = LENGTH - (p%LENGTH);
31             for (; p>0; --p)
32                 putchar('*');
33             p = 0;
34         }
35         else if (c == '\n')
36         {
37             putchar(c);
38             p = 0;
39         }
40         else
41         {
42             putchar(c);
43             ++p;
44         }
45     }
46 
47     return 0;
48 }

 

posted @ 2017-11-14 23:05  Goz  阅读(470)  评论(0编辑  收藏  举报