描述:用随机数产生一个5行5列的整数数组,每个元素均为3位数。输出该数组。计算该数组非对角线(主对角线和辅对角线)元素的和。
请问这怎么解
用随机数产生一个5行5列的整数数组,每个元素均为3位数。输出该数组。计算该数组非对角线(主对角线和辅对角线)元素的和。
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- SmallFatMan 2023-05-22 09:48关注
#include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int arr[5][5]; int sum = 0; srand((unsigned) time(NULL)); // 初始化随机数种子 // 生成数组 for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { arr[i][j] = rand() % 900 + 100; printf("%d ", arr[i][j]); } printf("\n"); } // 计算非对角线元素和 for (int i = 0; i < 5; i++) { for (int j = 0; j < 5; j++) { if (i != j && i+j != 4) { // 非对角线元素 sum += arr[i][j]; } } } printf("非对角线元素的和为:%d", sum); return 0; }
注意,随机数需要初始化种子,一般使用当前时间作为种子。数组的行列数都为5,利用循环遍历数组元素,并且在输出时每个数字后要加一个空格,以便观察。计算非对角线元素的方式是遍历数组,如果这个元素不在主对角线和辅对角线上,就把它加入到sum变量中。最后输出sum即可。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 matlab数据降噪处理,提高数据的可信度,确保峰值信号的不损失?
- ¥15 怎么看我在bios每次修改的日志
- ¥15 python+mysql图书管理系统
- ¥15 Questasim Error: (vcom-13)
- ¥15 船舶旋回实验matlab
- ¥30 SQL 数组,游标,递归覆盖原值
- ¥15 为什么我的数据接收的那么慢呀有没有完整的 hal 库并 代码呀有的话能不能发我一份并且我用 printf 函数显示处理之后的数据,用 debug 就不能运行了呢
- ¥20 gitlab 中文路径,无法下载
- ¥15 用动态规划算法均分纸牌
- ¥30 udp socket,bind 0.0.0.0 ,如何自动选取用户访问的服务器IP来回复数据