方阵对角线元素乘积计算

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

【程序设计】


功能:求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);

}

相关推荐
wuweijianlove34 分钟前
算法调度问题中的代价模型与优化方法的技术5
算法
Dxy123931021639 分钟前
Python路径算法简介
开发语言·python·算法
And_Ii1 小时前
LCR 132.砍竹子Ⅱ
算法
汀、人工智能1 小时前
[特殊字符] 第67课:跳跃游戏II
数据结构·算法·数据库架构·图论·bfs·跳跃游戏ii
Little At Air1 小时前
LeetCode 30. 串联所有单词的子串 | 困难 C++实现
算法·leetcode·职场和发展
手握风云-2 小时前
优选算法的层序之径:队列专题
数据结构·算法·leetcode
比昨天多敲两行2 小时前
C++ 哈希表
数据结构·哈希算法·散列表
历程里程碑2 小时前
Protobuf总结
大数据·数据结构·elasticsearch·链表·搜索引擎
lg_cool_2 小时前
Python 框架之py_trees
开发语言·数据结构·python