【C⼀C++】C语言求n阶方阵主、副对角线上的元素之积

2024-12-02 11:45:03
推荐回答(3个)
回答1:

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

void main()

{

int a[4][4],i,j,s1=0,s2=0,sum=0;

srand(time(NULL));//生成随机种子

for(i=0;i<5;i++)//赋值

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

a[j]=rand()%10+0;

printf("随机生成的数组为:\n");

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

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

{

printf("%d\t",a[j]);

if(j==4)

printf("\n");

}

printf("\n");

s1=a[0][0]+a[0][4]+a[1][1]+a[1][3]+a[2][2]+a[3][1]+a[3][3]+a[4][0]+a[4][4];

printf("此数组对角线(主对角线+副对角线)之和s1的值为:%d\n",s1);

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include<文件名>

2、#include"文件名"

如果需要包含标准库头文件或者实现版本所提供的头文件,应该使用第一种格式。如下例所示:

#include<math.h>//一些数学函数的原型,以及相关的类型和宏

如果需要包含针对程序所开发的源文件,则应该使用第二种格式。

采用#include命令所插入的文件,通常文件扩展名是.h,文件包括函数原型、宏定义和类型定义。只要使用#include命令,这些定义就可被任何源文件使用。

回答2:

不是你敲错了,就是书上错了。看改过的——

//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
#include "time.h"//加这行
#include "stdlib.h"//加这行
#define N 4
float mul(int arr[][N])
{
    int i,j;
    float t=1;
    for(i=0;i        for(j=0;j            if(i==j||i+j==N-1)//这里把i=j||i+j-1改如前
                t=t*arr[i][j];
    return(t);
}
int main(void){
    int a[N][N],i,j;//这里把[N][M]改成[N][N]
    srand((unsigned)time(NULL));//这里加一行
    for(i=0;i        for(j=0;j            a[i][j]=rand()%10+1;//这里把random(10)改如前
    for(i=0;i    {
        for(j=0;j            printf("%4d",a[i][j]);
        printf("\n");
    }
    printf("The sum is: %f\n",mul(a));//这里把%d改成%f
    return 0;
}

回答3:

#include 
#include 
#include 

const int N = 4;

int main() {
int primeDiagonal = 0,secondDiagonal = 0;
int a[N][N],i,j;
srand((unsigned)time(NULL)); // 初始化随机数种子
for(i = 0; i < N; i++) {
for(j = 0; j < N; j++) {
a[i][j] = rand()%51;
printf("%6d",a[i][j]);
}
printf("\n");
}
printf("\n");
for(i = 0; i < N;i++) {
primeDiagonal += a[i][i];
secondDiagonal += a[i][N - 1 - i];
}
printf("主对角线元素和:%d\n",primeDiagonal);
printf("辅对角线元素和:%d\n",secondDiagonal);
return 0;
}