我想知道如何编写一个函数来返回是否至少有三个值不等于0.我已经搜索了类似的问题,但我找不到任何有效的解决方案。为了解释我的问题,这是一个例子:
我有一个包含这些元素的数组:[1,0,2,0,4,0,0,3,0,0]
。我想检查是否至少有3个元素不等于零。
如果至少有3个元素1
,我的代码将返回!= 0
,如果少于3个元素0
,则返回!=0
。
所以在我的例子中它应该返回1
。
答案 0 :(得分:4)
计算不等于零的元素数量。如果小于3,则返回false,否则返回true。
为了获得计数,使用for循环遍历数组的内容,然后使用if语句测试元素是否为零。
答案 1 :(得分:0)
int non_zero(int a[], int lim) {
int i, count;
count = 0;
for (i = 0; i < lim && count < 3; i++)
if (a[i] != 0)
count++;
return count == 3 ? 1 : 0;
}
答案 2 :(得分:-1)
我想分享我的解决方案
int check(){
int arr[10]= [1,0,2,0,4,0,0,3,0,0];
int total=0;
for(int i=0;i<=10;i++){
total+=arr[i];
}
return total;
}
谢谢你们试图解决我的问题
&LT; 3