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

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

作者:互联网

/*编写程序detab,将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止的地方。假设制表符终止的位置是固定的,
比如每隔n列就会出现一个制表符终止位。n应该作为变量还是符号常量呢?*/
#include<stdio.h>
#define TABINC 8
main() {
int c = 0;
int count = 0;//添加*的个数
int pos = 1;//输入的字符在输入中的位置
while ((c = getchar()) != EOF){
if (c == '\t') {
count = TABINC - (pos - 1) % TABINC;//8个字符一组,其中有制表符的用*补充
while (count > 0) {
printf("*");
++pos;
--count;
}
}
else if (c=='\n') {
putchar(c);
pos = 1;
}
else {
putchar(c);
++pos;
}
}
}

标签:count,int,pos,空格,终止,制表符
来源: https://www.cnblogs.com/xgd-521/p/15942820.html