首页 > 解决方案 > 我想检查数组中从开始到结束的所有元素(整数)是否相等

问题描述

在一个数组中,我必须检查所有元素是否相同。例如: a[]={2,2,2,2,2,2,2}

    for(i=0;i<n;++i)
    {
        if(a[0] == a[i])
        {
            f = 1;
            break;
        }
    }
    if(f == 1)
    printf("All elements are same");

当任何两个元素相同时,它给了我真实的信息。但我必须检查所有元素是否相同。

标签: c

解决方案


倒转逻辑,真的。您可以从 1 开始迭代,因为您正在比较a[0]

f = 1;
for (i = 1; i < n; ++i)
  if (a[i] != a[0]) {
    f = 0;
    break;
  }

if (f == 1)
  printf("All elements are the same");

推荐阅读