c - 在二维数组中搜索一行中的所有零

标签 c arrays

我想看看是否可以找到 n x n 二维数组中的整行是否全为零,我最初有这段代码,但被告知不要使用 goto。我将如何把它取出来?

int first_zero_row = -1;    
int i, j;
for(i = 0; i < n; i++) {
  for(j = 0; j < n; j++){
    if(A[i][j]) goto next;
  }
  first_zero_row = i;
  break;
next:
}

最有效的方法是什么?

最佳答案

你可以试试这个

int first_zero_row = -1;    
int flag, i, j;

for(i = 0; i < n; i++) {
    flag = 1;
    for(j = 0; j < n; j++) {
        if(A[i][j]) {
            flag = 0;
            break;
        }
    }
    if (flag) {
        first_zero_row = i;
        break;
    }
}

关于c - 在二维数组中搜索一行中的所有零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22246025/

相关文章:

c - 此基数排序代码中的最后一个 `for` 循环有什么作用?

c - 为什么gcc编译出来的exe文件这么大?

c - 声明大数组时出现堆栈溢出异常

c++ - 为什么我的 cpp 数组大小是 4 的倍数?

java - 有没有一种简单的方法可以在java中重新排列数字?

c - 如何在 C 中使用 libsox 更改声音文件的速度?

c - 禁用 __thread 支持

java - 数组:个人号码 (CPR)

c++ - 如何检查 C++ 数组中元素的存在

java - 为什么这段代码在这里给我一个空异常错误?