将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止的地方
#include <stdio.h>
#define NSPACE 8
int main(int argc, char *argv[])
{
int c;
int npos=1;
while((c=getchar())!=EOF)
{
if(c=='\t')
{
int nb=NSPACE-(npos-1)%NSPACE;//列举:当字符在第一位时,需打印8个空格,第二位,需打印7个空格,类推:NSPACE-(npos%NSPACE)+1
while(nb>0)
{
putchar(' ');
npos++;
nb--;
}
}
else if(c=='\n')
{
putchar(c);
npos=1;
}
else
{
putchar(c);
npos++;
}
}
return 0;
}

浙公网安备 33010602011771号