我很难理解,因此很难在 C 中手动管理数组和索引。这是我的两种经典方法,但它们似乎不起作用,因为它们在达到条件时会继续循环:
#include<stdio.h>
#define MAX 255
int main(){
int arr[MAX]={0};
int idx=0;
/* Approach #1 */
printf("Enter elements, -1 to finish:\n");
scanf("%d", &arr[idx]);
while(arr[idx-1] != -1 && idx < MAX){
printf("Enter elements, -1 to finish:\n");
scanf("%d", &arr[idx]);
idx++;
}
/* Approach #2 */
do{
printf("Enter elements, -1 to finish:\n");
scanf("%d", &arr[idx]);
idx++;
}while(arr[idx-1] != -1 && idx < MAX);
// Main func continues here.
}
任何建议将不胜感激!
更新:
现在它起作用了!非常感谢你们所有人的即时回复。这绝对是一个很棒的社区,它帮助了我很多。