C语言程序设计中 用函数Add()函数求一个4*4二维数组的主副对角元素之和,函数fun()求该二维数组的转置----二维数组
#include<stdio.h>
int a[4][4];
void Add(){
int sum1=0,sum2=0;
int i,j;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(i==j) sum1+=a[i][j];
if(i+j==3) sum2+=a[i][j];
}
}
printf("主对角线元素之和:%d\n",sum1);
printf("辅对角线元素之和:%d\n",sum2);
}
void fun()
{
int i,j;
for (i = 0; i < 4; i++)
{
for (j = i + 1; j < 4; j++)
{
int temp = a[i][j];
a[i][j] = a[j][i];
a[j][i] = temp;
}
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
}
void main()
{
int i,j;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
}
}
Add();
fun();
}
#include<stdio.h>
void Add(int arry1[][4]) {
int i,j,sum1=0,sum2=0;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
if(i==j) sum1+=a[i][j];
if(i+j==3) sum2+=a[i][j];
}
}
printf("主对角线元素之和:%d\n",sum1);
printf("辅对角线元素之和:%d\n",sum2);
}
int fun(int arry1[][4],int arry2[][4]) //转置函数
{
for(int i=0;i<M;i++)
for(int j=0;j<N;j++)
arry2[j][i]=arry1[i][j];
return 0;
}
void main()
{
int a[4][4], b[4][4];
Add(a);
fun(a,b);
}
函数Add()函数求一个4*4二维数组的主副对角元素之和
思路:首先定义一个4*4二维数组,定义一个函数接受这个数组做参数,通过循环求和
其次 定义fun,实现转置,稍后下面提供代码
行列转置
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
/*
2、将二维数组int a[3][3]的行列转换后输出,如:
1 2 3 输出成: 1 4 7
4 5 6 2 5 8
7 8 9 3 6 9
提示:如果stu[i][j]表示第i行第j列,则转换之后应该在第j行第i列,即应该为与stu[j][i]的位置,所以循环输出j行,每行输出i列就可以
*/
int a[3][3];
int i,j;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
printf("------------------------------------\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%d\t",a[j][i]);
}
printf("\n");
}
}
对角线之和
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
/*
3、编写程序计算n行n列的二维数组对角线上的元素的和。
提示:行=列,行+列=n-1为两条对角线
正对角线所有元素的下标i==j
斜对角线所有元素的下标i+j=n-1
*/
int i,j;
int a[4][4];
int sum=0;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
scanf("%d",&a[i][j]);
if((i==j) || ((i+j)==3))
{
sum+=a[i][j];
}
}
}
printf("对角线上的和=%d\n",sum);
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632