代码如下:
#include <stdio.h>
#define TABINC 4 /* tab length */
int main ( void ) {
int c, nb, pos;
nb = 0; /* number of blanks necessary */
pos = 1; /* position of character in line */
while ( ( c = getchar() ) != EOF ) {
if ( c == '\t' ) { /* tab character */
nb = TABINC - ( pos - 1 ) % TABINC;
while ( nb > 0 ) {
putchar ( ' ' );
++pos;
--nb;
}
} else if ( c == '\n' ) { /* new line character */
putchar ( c );
pos = 1;
} else { /* other character */
putchar ( c );
++pos;
}
}
return 0;
}