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

原创 2016年05月31日 15:18:26

制表符补足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;
        }
    }
}

相关文章推荐

将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方

#include #define  TABINC  8 //定义每个TABINC(8)个位置会出现一个制表位 int main() {     int c, nb, pos;     nb...

第7周 C语言程序设计(新2版) 练习1-18 删除空格制表符 (程序不能正确运行)

问题及代码: /*删除每个输入行末尾的空格及制表符, 并删除完全是空格的行*/ #include #define MAXLINE 1000 int getline(char line[],...

将一个字符串中的空格替换成“ %20”

题目描述: 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 在编码之前,我们先来看看几个...

java 基础数据遍历(1)----将一个字符串中的空格替换成“%20”

题目要求:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 解题思路: 1.确认使用for...

scala 替换段落中的多个空格、换行、制表符

scala 替换段落中的多个空格、换行、制表符

Java 替换段落中的多个空格、换行、制表符

Java 替换段落中的多个空格、换行、制表符package com.juanpi.bi;/** * Created by gongzi on 2017/2/10. */ public class ...

请实现一个函数,把字符串中的每个空格替换成“ ”

题目:替换空格---请实现一个函数,把字符串中的每个空格替换成“%20” 例子:We are happy.\0 替换后:We%20are%20happy.\0 思路:从字符串的后面往前替换,这样字符移...

请实现一个函数,把字符串中的每个空格替换成“20%”。

思路:我们从字符串的末尾开始复制和替换。           1、定义两个指针,p1和p2。p1指向原始字符串的末尾,p2指向替换后字符串的末尾。           2、向前移动指针p1,逐个把它指...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:练习1-20 编写程序detab,将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方
举报原因:
原因补充:

(最多只允许输入30个字)