练习1-20:请编写程序detab,将输入中的制表符替换成适当数目的空格,适空格充满到下一个制表符中止的地方。假设制表符终止位的位置是固定的,比如每隔n列就会出现一个制表符终止位。n应该作为变量还是符号常量呢?

 

 1 #include <stdio.h>
 2 #define TABINC 8
 3 
 4 main()
 5 {
 6 int c, nb, pos;
 7 nb = 0;
 8 pos = 1;
 9 while((c = getchar())!= EOF)
10 {
11 if(c =='\t')
12 {
13 nb = TABINC - (pos - 1) % TABINC;
14 while (nb > 0)
15 {
16 putchar(' ');
17 ++pos;
18 --nb;
19 }
20 }else if(c == '\n')
21 {
22 putchar(c);
23 pos = 1;
24 }else
25 {
26 putchar(c);
27 ++pos;
28 }
29 }
30 }

 

posted @ 2013-10-25 20:26  _Jango  阅读(662)  评论(0编辑  收藏  举报