c - 一旦五个偶数放入数组中,程序将停止

标签 c arrays

这是一个获取数字输入的程序。从给定或输入的数字中,仅将偶数存储在数组中。一旦 5 个偶数已存储在数组中,输入将停止/终止。这是我的代码:

#include <stdio.h>
#include <conio.h>
int main()
{
int num[5];
int x, counter, even[5], numEven=0;



    for(counter=0; counter<5; counter++){ //loop for getting the numbers from the user
        printf("Enter number: ");
        scanf("%d", &num[counter]);
            if(num[counter]%2==0){                //storing the even numbers
                even[numEven] = num[counter];
                numEven++;
            }
    }




    printf("\n\nEven numbers: "); //printing even numbers
    for(counter=0; counter<numEven; counter++){
        printf("%d, ", even[counter]);
    }


getch();
return 0;
} 

当已经存储了 5 个偶数时,我对在哪里停止输入感到困惑。是不是少了点什么?或者我做错了方法?我希望我能获得有关代码的帮助和建议。非常感谢。

最佳答案

#include <stdio.h>
#include <conio.h>
int main()
{
   int x, even[5], numEven = 0;

   while (numEven < 5)
   {
      scanf("%d", &x);
      if (x % 2 == 0)
      {
         even[numEven++] = x;
      }
   }
   printf("\n\nEven numbers: "); //printing even numbers
   for(x=0; x<numEven; x++)
   {
     printf("%d, ", even[x]);
   }
   getch();
   return 0;
} 

您将继续读取输入,直到 numEven 达到 5。如果读取的输入是偶数,请将其存储在数组中并递增 numEven

关于c - 一旦五个偶数放入数组中,程序将停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18669158/

相关文章:

c++ - 此 strncpy 存在哪些安全问题?

c++ - 在 C/C++ 中列出项目的最有效方法

c - 在 C 中,我有一个从文件中读取的 char* 数组,当我通过引用将其从函数中传递出来时,我得到了垃圾

c++ - 在 C++ 中填充仅包含一个 int 数组成员的结构?

javascript - 每次输入新行js后的平均工资

c++ - 如何更改类中的数组?

c - 为什么它们必须在同一行: (c = getchar()) ! = EOF)

c++ - 在 C++ 中初始化指针是强制性的吗?

Javascript - underscorejs map reduce groupby 基于日期

c - 为什么使用 AVX2 的加速比预期的要低?