关闭

练习1-20 编写程序detab,将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方

259人阅读 评论(2) 收藏 举报
分类:

制表符补足8个字符,或说每隔8列就会出现一个制表符终止位,例如:

aaaaaaaaa
aaa     a
aa      a

使用pos变量的原因是看需要补足几个字符。

#include <stdio.h>
#define TABINC 8

main()
{
    int c,nb,pos;
    nb=0;
    pos=1;
    while((c=getchar())!=EOF){
        if(c=='\t'){
            nb=TABINC-(pos-1)%TABINC;
            while(nb>0){
                putchar(' ');
                ++pos;
                --nb;
            }
        }
        else if(c=='\n'){
            putchar(c);
            pos=1;
        }
        else{
            putchar(c);
            ++pos;
        }
    }
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:33958次
    • 积分:991
    • 等级:
    • 排名:千里之外
    • 原创:68篇
    • 转载:0篇
    • 译文:0篇
    • 评论:11条
    最新评论