#include <stdio.h>
#include <stdlib.h>
int main() {
unsigned int n0;
scanf("%d", &n0);
const unsigned int n = n0;
short unsigned int A[n];
short unsigned int d, x, y, k;
short int l, r;
int i, j;
for (i = 0; i < n; i++) {
scanf("%d", &A[i]);
}
scanf("%d", &d);
for (i = 1; i <= d; i++) {
scanf("%d %d", &x, &y);
}
return 0;
}
嗨,我是一个总C新手,偶然发现了一个令我惊讶的情况。在上面的代码中,我想要求用户输入一些数字d
,然后输入d
对点坐标。但令我惊讶的是,程序在输入第一对(x,y)后结束执行,无论先输入大于1的d
什么值。如果我在代码(e.x. d = 5;
)中为d
赋值,则不会发生这种情况。可能是什么原因?通过scanf
声明分配给变量的值是否有所不同,并且不能用于循环条件?环境条件与可变输入与scanf - C
这是什么'为(i = 0; I
@xing,它的工作,谢谢!但为什么实际%d没有按't没有工作? – jakes
@KrzysztofSzewczyk,这是进一步功能的东西,我忘了在这里删除它 – jakes