|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
编写一个程序detab,用正确的空格数替换输入中的制表符,直到下一个制表符停止。假设一组固定的制表符停止,比如每n列一次。n应该是一个变量还是一个符号参数?
- 1 /**
- 2 * 编写程序detab,将输入中的制表符替换成数目的空格,
- 3 * 使空格充满到下一个制表符终止位的地方.
- 4 * 制表符:制表符(也叫制表位)的功能是在不使用表格的情况下在垂直方向按列对齐文本。
- 5 * 2018-4-9
- 6 * Author:TriompheL
- 7 */
- 8
- 9 #include <stdio.h>
- 10
- 11 #define NUMTAB 8
- 12
- 13 int main()
- 14 {
- 15 /*
- 16 * blankNum : 将要输出的空格数目
- 17 * listNum: 每行第一个字符开始,当前字符位置.
- 18 */
- 19 int c,listNum=0,blankNum,i;
- 20
- 21 while( (c=getchar()) != EOF){
- 22 if(c == '\t'){
- 23 blankNum = NUMTAB - (listNum % NUMTAB);
- 24 for(i = 0;i < blankNum; i++){
- 25 putchar(' ');
- 26 }
- 27 listNum += blankNum;
- 28 }
- 29 else if(c == '\n'){
- 30 listNum = 0;
- 31 putchar(c);
- 32 }
- 33 else{
- 34 listNum++;
- 35 putchar(c);
- 36 }
- 37 }
- 38
- 39 return 0;
- 40 }
复制代码
blankNum = NUMTAB - (listNum % NUMTAB);
这一步什么意思,看不懂
|
|