方阵对角线元素乘积计算

/*------------------------------------------------

【程序设计】


功能:求n阶方阵主、副对角线上的元素之积。

------------------------------------------------*/

#define N 4

#include "stdlib.h"

#include <stdio.h>

void wwjt();

float mul(int arr[][N])

{

/**********Program**********/

float pro = 1.0;

int i = 0;

for (i = 0; i < N; i++)

{

pro *= arr[i][i];

pro *= arr[i][N - i - 1];

}

if (N % 2 == 0)

{

return pro;

}

else

{

return (pro - arr[N / 2][N / 2]);

}

/********** End **********/

}

int main()

{

srand((unsigned int)time(NULL));

int a[N][N], i, j;

for (i = 0; i < N; i++)

for (j = 0; j < N; j++)

a[i][j] = rand() % (10);

for (i = 0; i < N; i++)

{

for (j = 0; j < N; j++)

printf("%4d", a[i][j]);

printf("\n");

}

printf("The sum is %f\n", mul(a));

wwjt();

return 0;

}

void wwjt()

{

FILE* IN, * OUT;

int m, n;

int i[4][4];

float o;

IN = fopen("in.dat", "r");

if (IN == NULL)

{

printf("Read FILE Error");

}

OUT = fopen("out.dat", "w");

if (OUT == NULL)

{

printf("Write FILE Error");

}

for (m = 0; m < 100; m++)

for (n = 0; n < 100; n++)

{

fscanf(IN, "%d", &i[m][n]);

}

o = mul(i);

fprintf(OUT, "%f\n", o);

fclose(IN);

fclose(OUT);

}

相关推荐
那个村的李富贵21 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
power 雀儿21 小时前
Scaled Dot-Product Attention 分数计算 C++
算法
Yvonne爱编码21 小时前
JAVA数据结构 DAY6-栈和队列
java·开发语言·数据结构·python
熬夜有啥好21 小时前
数据结构——哈希表
数据结构·散列表
琹箐21 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
renhongxia11 天前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了1 天前
数据结构之树(Java实现)
java·算法
算法备案代理1 天前
大模型备案与算法备案,企业该如何选择?
人工智能·算法·大模型·算法备案
赛姐在努力.1 天前
【拓扑排序】-- 算法原理讲解,及实现拓扑排序,附赠热门例题
java·算法·图论
我能坚持多久1 天前
【初阶数据结构01】——顺序表专题
数据结构