一个C语言指针问题。求大佬解答?

编写程序,求一个 NXN 方阵的第对角线的元素之和。

在这个程序中,我们首先提示用户输入方阵的尺寸,然后输入方阵的元素。接着,我们通过遍历方阵的每一行,并使用指针指向每行对应列的元素,来求出方阵对角线元素之和。最后,我们输出结果。

程序的输出示例如下:






#include <stdio.h>

int main()

{

// 方阵的尺寸

int n;

printf("Enter the size of the matrix: ");

scanf("%d", &n);

// 方阵

int matrix[n][n];

printf("Enter the elements of the matrix: \n");

for (int i = 0; i < n; i++)

{

for (int j = 0; j < n; j++)

{

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

}

}

// 求对角线元素之和

int sum = 0;

for (int i = 0; i < n; i++)

{

// 对角线上的元素的指针

int *p = matrix[i] + i;

sum += *p;

}

printf("Sum of the diagonal elements: %d", sum);

return 0;

}

温馨提示:答案为网友推荐,仅供参考
相似回答