我正在处理一个数组,实际上很简单,它将允许用户输入5个数字然后打印该数组,我已经开始工作了很多,但是当用户输入时可以满足第二个条件-1,这将导致Array根据当前输入的数字进行打印,但应包括-1,我似乎无法做到这一点,这是我的代码:当前它可以执行我需要的一切,但仍会打印-1帮助将不胜感激
#include <stdio.h>
#include <stdlib.h>
#define ARR 5
main() {
int i = 0;
int arr[ARR];
for (i = 0; i < ARR; i++)
{
printf(" Enter a number: ");
scanf("%i", &arr[i]);
if (arr[i] == -1) {
break;
}
}
printf(" the Numbers in the array are %i : ", i);
for (i = 0; i < ARR; i++) {
printf("\n %i, %i", i, arr[i]);
if (arr[i] == -1) {
break;
}
}
printf("\n");
system("pause");
}
答案 0 :(得分:0)
别担心,对不起我使用了错误的标签,我发现 我做错的是我将printf语句移出的代码顺序 for循环
for (i = 0; i < ARR; i++) {
if (arr[i] == -1) {
break;
}
printf("\n %i, %i", i, arr[i]);
}
and now its working as intended. Someday i hope to able to post more here and
help others right now im just a noob learning as i go.
答案 1 :(得分:0)
只需稍早移动if
条件,以便在打印之前先检查-1。
if (arr[i] == -1) {
break;
}
printf("\n %i, %i", i, arr[i]);