问题:例如,如果在检查x[0]
循环中的条件后确定for
的值,则如何对循环进行编程以使其在{{1}时停止存储sentinel的值?
x[0]
答案 0 :(得分:0)
您可能想要检查刚刚输入的值。因此,您可能希望在循环条件中看到先前的索引为最开始的索引创建异常(始终求值为true):
for (int i = 0; i==0 || x[i-1] != SENTINEL; i++) {
printf("Input Data Value %d> \n", i+1);
scanf_s("%f", &x[i]);
}
请注意,代码不会尝试在x为0时评估x[i-1]
(如果' ||'的第一个操作数已被评估为true,则不会尝试第二个操作数),所以它是安全的(假设你有足够长的x数组)。