编写程序detab,将输入中的制表符换成适当数目的空格
2016-08-28 10:48
801 查看
#include<stdio.h>
#define TABINC 5
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;
}
}
}
#define TABINC 5
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;
}
}
}
相关文章推荐
- 练习 1-20 编写程序 detab,将输入中的制表符替换成适当数目的空格,使空格充满到 下一个制表符终止位的地方。
- 练习1-20:请编写程序detab,将输入中的制表符替换成适当数目的空格,适空格充满到下一个制表符中止的地方。假设制表符终止位的位置是固定的,比如每隔n列就会出现一个制表符终止位。n应该作为变量还是符号常量呢?
- 编些程序detaba,将输入中的制表符替换为适当数目的空格,使空格充满到下一个制表符终止位的地方
- 练习1-22 编写一个程序,把较长的输入行折成短一些的两行或者多行,折行的位置在输入行的第N列之前的最后一个非空格之后。要保持程序能够智能地处理输入行很长以及在制定的列前没有空格或者制表符时的情况。
- 将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方
- 将输入的制表符替换成适当数目的空格,使空格充满到下一个制表符终止的地方。
- 编写一个程序,删除每个输入行末尾的换行符和制表符,并删除完全是空格或制表符的行<The C Programming Language>课后习题
- 将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方
- 练习1-18 编写一个程序,删除每个输入行末尾的空格以及制表符,并删除完全是空格的行
- 将输入中的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方
- <C语言>编写一个程序,该程序读取输入直到遇到#字符,然后报告读取的空格数目、读取的换行数目以及读取的所有其他字符数目。
- 练习1-21 编写程序entab,将空格串替换成最少数量的制表符和空格,但要保持单词之间的间隔不变。假设制表符终止位的位置与练习1-20的detab程序的情况相同。当使用一个制表符或者一个空格都可以到达下一个制表符终止位时,选用哪种替换字符比较好。
- 将输入的制表符替换成适当数目的空格,使空格充满到下一个制表符终止位的地方
- 要求编写程序,读入5个字符串,按由小到大的顺序输出。 (2)功能要求 ①输入格式:输入为由空格分隔的5个非空字符串,每个字符串不包括空格、制表符、换行符等空白字符,长度小于80。
- 编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替
- 编写一个程序,把较长的输入行“折”成短一些的多行,折行的位置在输入行的第N列之前的最后一个非空格之后
- 编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替。
- 练习 1- 8 编写一个统计空格,制表符与换行符个数的程序
- 练习1-10 编写一个将输入复制到输出的的程序,并将其中的制表符替换成\t,把回退符替换成\b,把反斜杠\替换成\\,这样可以将制表符和回退符以可见的方式显示出来。
- 编写一个统计空格,制表符与换行符个数的程序。