为什么在此代码中用 C 赋值数组元素后不能立即打印数组元素?


#include <stdio.h>
int main()
{
int a[5];
int i;
for(i=0; i<5; i++) {
printf("Enter: ");
scanf("%dn", &a[i]);
printf("You entered: %dn", a[i]);
}
}

我想知道为什么我不能以这种方式打印数字?(分配后立即(

输出为: 输入:5 6 您输入:5
输入:3

您输入:6

输入:8 您输入:3
输入:9 您输入:8

输入:1
您输入:9


我希望它是: 输入:5 您输入:5

输入:6 您输入:6


等等

你应该擦除scanf函数中的""。

#include <stdio.h>
int main()
{
int a[5];
int i;
for(i = 0; i< 5; i++) {
printf("Enter: ");
scanf("%d", &a[i]);
printf("You entered: %dn", a[i]);
}
}
Enter: 1
You entered: 1
Enter: 2
You entered: 2
Enter: 3
You entered: 3
Enter: 4
You entered: 4
Enter: 5
You entered: 5

最新更新