其右上三角(含主对角线)元素之和。
分数 12
作者 时贵英
单位 东北石油大学
输入二维数组的所有元素,求二维数组右上三角(包括主对角线)元素之和。
函数接口定义:
在这里描述函数接口。例如:
int fun(int a[3][3]);
裁判测试程序样例:
在这里给出函数被调用进行测试的例子。例如:
#include <stdio.h>
int fun(int a[3][3]);
int main()
{ int i,j,s,x[3][3];;
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&x[i][j]);
s=fun(x);
printf("sum=%d\n",s);
return 0;
}
/* 您的答案将被嵌入在这里 */
输入样例:
1 2 3 4 5 6 7 8 9
输出样例:
在这里填写相应的输出
sum=26
有帮助的话请给个采纳呀
fun函数这样写,你可以参考一下:
int fun(int a[3][3])
{
int b[100];
int sum = 0;
int flag = 0;
int h, l, i;
for (h = 0; h < 3; h++)//这里正序
{
for (l = 3 - 1; l >= h; l--)//这里逆序,主对角线上的值也不可取,所以用了>
{
b[flag] = a[h][l];
flag++;//记录有多少次
}
}
for (i = 0; i < flag; i++)
{
sum = sum + b[i];
}
return sum;
}
运行结果:
全部代码,你可以自己复制运行一下:
#include<stdio.h>
int fun(int a[3][3])
{
int b[100];
int sum = 0;
int flag = 0;
int h, l, i;
for (h = 0; h < 3; h++)//这里正序
{
for (l = 3 - 1; l >= h; l--)//这里逆序,主对角线上的值也不可取,所以用了>
{
b[flag] = a[h][l];
flag++;//记录有多少次
}
}
for (i = 0; i < flag; i++)
{
sum = sum + b[i];
}
return sum;
}
int main()
{
int i, j, s, x[3][3];
for (i = 0; i < 3; i++)
{
for (j = 0; j < 3; j++)
{
scanf("%d", &x[i][j]);
}
}
s = fun(x);
printf("sum=%d\n", s);
}