我的程序中的缩进由 \t
实现,仅在第 10 天后显示。我不知道它有什么问题。
float penny= 0.01;
int days = 1;
while(31 >= days)
{
printf("Day: %d \t Amount: %f\n", days, penny);
days += 1;
penny *= 2;
}
最佳答案
这是因为 TAB 字符 (\t'
) 只是将光标前进到下一个模 8 列:
插图:
01234567012375670123456701234567 <-- column number modulo 8
| | | |
Day: 9 Amount: 2.560000
Day: 10 Amount: 5.120000
Day: 11 Amount: 10.240000
通常终端的行为是这样的,但我不确定是否真的有一个标准来定义它。
说明此行为的小程序:
#include <stdio.h>
int main()
{
int i,j,k;
for (i = 0; i < 16; i++)
{
for (j = 0; j < 4; j++)
{
for (k = 0; k < i; k++)
{
printf ("*");
}
printf ("\t");
}
printf ("\n");
}
}
输出:
* * * *
** ** ** **
*** *** *** ***
**** **** **** ****
***** ***** ***** *****
****** ****** ****** ******
******* ******* ******* *******
******** ******** ******** ********
********* ********* ********* *********
********** ********** ********** **********
*********** *********** *********** ***********
************ ************ ************ ************
************* ************* ************* *************
************** ************** ************** **************
*************** *************** *************** ***************
关于c - C 上的缩进不适用于前十行代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32095796/