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 }
![]()