课程
/后端开发
/C
/C语言入门
能解释一下这个循环过程是怎么样的么?
2018-09-23
源自:C语言入门 6-11
正在回答
123
456
789
我们需要计算 1+3+5+7+9的值,也就是25.
if(i%2==0 && j%2==0) 这个条件就是解决了 1+3+7+9
为什么解决了这四个呢
因为1的i和j都是0,0%2=0
3的i也是0,而j是2,2%2=0
同理7和9也可以满足if条件
然后再使用sum += arr[1][1];
加上中间的5.
于是就可以完成计算了
if(i==j||i+j==2){ sum+=arr[i][j];
#include <stdio.h>int main(){ int arr[3][3] = {{1,2,3},{4,5,6},{7,8,9}}; int i,j; int sum=0; for(i=0;i<3;i++) { for(j=0;j<3;j++){ if(i==j||i+j==2){ sum+=arr[i][j]; } } } printf("对角线元素之和是:%d\n",sum); return 0; }
如果是4阶矩阵的话%2不就没用了?4阶以上怎么办?
举报
C语言入门视频教程,带你进入编程世界的必修课-C语言
3 回答为什么是y*=2??
2 回答为什么是2.5,不是2?
2 回答arr[4]=1为什么?为什么不是2?
1 回答为什么是((n+1)+1)*2
1 回答为什么是(n+1)+1)*2