📦 归档笔记 — 原创建于 WizNote,仅作归档展示;观点以当年为准,非最新。

C程序设计第六章作业 3

创建时间2018-02-12最后修改2018-02-13原位置/程序员成长之旅/C语言/习题(C语言程序设计)/第六章习题/字数306图片/附件6
目录:程序员成长之旅/C语言/习题(C语言程序设计)/第六章习题

问:

求一个3x3的整型矩阵对角线元素之和

参考:【补课】什么是对角线

🖼 图片占位(归档模式)图片见原始导出:C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E5%85%AD%E7%AB%A0%E4%BD%9C%E4%B8%9A%203.assets/d36de5b1-977b-4e11-abbb-cce264d513a4.png

答:

#include<stdio.h> //求整形矩阵对角线之和

int main() {

int i = 0, j = 0, k = 0, l = 2, o = 0, p = 3;

int Num[3][3] = { 0 };

int Result1 = 0, Result2 = 0;

for (i = 0; i < 3; i++) {

for (j = 0; j < 3; j++) {

scanf("%d", &Num[i][j]);

if (!((Num[i][j] > -99999)&&(Num[i][j]<99999))) {

setbuf(stdin, NULL);

printf("You enter data error!\n");

return 0;

}

}

}

for (k = 0; k < 3; k++) {//计算主对角线

Result1 += Num[k][k];

}

do{//计算副对角线

Result2 += Num[l][o];

l--;//控制行

o++;//控制列

p--;//控制循环次数

} while (p);

printf("Main diagonal sum is [%d]\n", Result1);//输出主对角线

printf("Vice diagonal sum is [%d]\n", Result2);//输出副对角线

return 0;

}

运行结果:

🖼 图片占位(归档模式)图片见原始导出:C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E5%85%AD%E7%AB%A0%E4%BD%9C%E4%B8%9A%203.assets/03f8980c-7dce-46af-9139-bac30a611f44.png

或者

🖼 图片占位(归档模式)图片见原始导出:C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E5%85%AD%E7%AB%A0%E4%BD%9C%E4%B8%9A%203.assets/5d00ac3b-bca7-4126-89bc-1789e17d3e49.png