gcc上循环输出 为什么会这样

gcc下循环输出 为什么会这样?rt:#include stdio.hint main(void){int index 0int number 0for (

gcc下循环输出 为什么会这样?
rt:


#include <stdio.h>

int main(void)
{
int index = 0;
int number = 0;

for (; index <= 5; index++)
{
scanf("%d", &number);
printf("\n$%d$", number);
}

    return 0;
}

结果:
123456

$123456$
第一行输入
第二行是空行
第三行是输出
为什么不是这样:

$1$

$2$

$3$

$4$

$5$

$6$
[解决办法]
scanf("%d", &number);