编写函数,求4*4 矩阵主对角线元素的最小值,并在主函数中调用它。要求数组元素的值在程序内赋值,不通过键盘输入。
#include<stdio.h>
int ph(int a[4][4])
{
int y,s,min=999999;
for (y = 0; y < 4; y++)
{
s = a[y][y];
if (s<min)
min = s;
s = a[y][3-y];
if (s<min)
min = s;
}
return min;
}
int main()
{
int a[4][4] = {
8,7,4,5,
5,6,3,5,
9,5,1,4,
8,3,6,7
};
printf("%d\n",ph(a));
return 0;
}
/* Note:Your choice is C IDE */
#include "stdio.h"
int fun(int a[4][4]){
int i,j;
int min = a[0][0];
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
//对角线元素
if(i==j)
{
//判断最小值
if(min>a[i][j]){
min = a[i][j];
}
}
}
}
return min;
}
void main()
{
/*
3、编写程序计算n行n列的二维数组对角线上的元素的和。
提示:行=列,行+列=n-1为两条对角线
正对角线所有元素的下标i==j
斜对角线所有元素的下标i+j=n-1
*/
int a[4][4]={
{1,2,3,4},
{5,6,7,8},
{9,10,11,12},
{13,14,15,16}
};
//赋初值
int min = fun(a);
printf("对角线上的最小值=%d\n",min);
}
/* 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