c - 输入 -1 后将停止询问输入的数组(不打印 -1)

标签 c

我正在处理一个数组,事实上相当简单,它允许用户输入 5 个数字,然后打印该数组,我已经完成了这么多,但是当用户输入时可以满足第二个条件-1,这将导致数组根据当前输入的数字进行打印,但应包括 -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");
}

最佳答案

只需将 if 条件移到前面,以便在打印之前先检查 -1。

if (arr[i] == -1) {
  break;
}
printf("\n %i, %i", i, arr[i]);

关于c - 输入 -1 后将停止询问输入的数组(不打印 -1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51275838/

相关文章:

c++ - 大缓冲区播放,小尺寸不播放

c++ - #pragma omp parallel num_threads 不工作

C++ win32 从资源加载字符串

c++ - 使用 gcc 的 -lpthread 和 -lrt 集在 Eclipse 中编译

c - 在一行中写多个简洁的语句是一种好习惯吗?

返回 char* 的 C 函数的 C# pinvoke

c - struct '... makes pointer from integer without a cast' 初始化期间的警告

c - C代码的优化

c - Turbo C 数组问题

c - 我对堆栈不了解