![](/img/trans.png)
[英]Function that can count how many numbers in array A fall in the range from low to high.
[英]Function to count how many numbers in an array meet a certain condition
我想創建一個 function 來計算數組包含多少“顯性”數字。 占主導地位的意思是一個數字比它自己右邊的任何東西都大。 我創建了 main 來測試它是否有效,但程序只是崩潰了。 有什么建議么?
#include <stdio.h>
#include <stdlib.h>
#define NR 4
#define NC 8
int dominants(int arr[NR][NC]);
int main(int argc,const char *argv[]){
int n;
int array[NR][NC]={{5,9,2,4,1,7,2,4}
,{3,5,6,2,5,6,1,2}
,{1,3,4,7,8,8,3,0}
,{1,3,5,6,7,8,2,1}};
n=dominants(array);
printf("there are %d dominants", n);
return 0;
}
int dominants(int arr[NR][NC]){
int i, j, k, l;
int flag, num;
num=0;
flag=0;
for(i=0;i<NC;i++){
for(j=0;j<NR;j++){
for(k=i+1;j<NC;k++){
for(l=k+1;l<NR;l++){
if(arr[j][i]<=arr[l][k]){
flag=1;
}
}
}
}
if(flag==1)
num++;
}
return num;
}
將第 24 行更改為條件有 j<NC 而它應該是 k<NC: "for(k=i+1;j<NC;k++){" to "for(k=i+1;k<NC;k++ ){"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.