在我的程序中,在我输入第一个输入后。由于 scanf
旁边的 printf
语句,我预计会打印这些值,但这是第一次,它没有被打印。对于下一次迭代及其所有正常工作
例如:
输出:
输入输入10
12
i=0,a[i]=11896224
输入内容
代码:
#include<stdio.h>
#include<stdlib.h>
int func(int *, int);
int *a;
int main()
{
int length = 5;
a = (int *)malloc(sizeof(int)*length);
for (int i = 0;i < length;i++)
{
printf("Enter input");
scanf("%d\n", &a[i]);//100,104,108,112,116
printf("i=%d,a[i]=%d\n", i, &a[i]);/*Print Statement which is not executing for first time*/
}
func(a, length);
return 0;
}
int func(int *b, int length)
{
printf("Length=%d", length);
for (int j = 0;j < length;j++)
printf("b[%d]=%d", j, b[j]);//
return 0;
}
最佳答案
从 scanf
函数中删除 \n
。
关于c - 在C中,Print语句没有在for循环中打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32343528/