C语言程序设计:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出矩阵第一行与第三行

C语言程序设计:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出矩阵第一行与第三行元素之和。求助

#include <stdio.h>

int main()
{
    int i = 0, j = 0;
    int a[3][3] = {0};
    int sum1=0, sum2=0;

    printf("请依次输入矩阵各个元素的值:\n");

    for(i=0; i<3; i++)
    {
        scanf("%d,%d,%d",&a[i][0],&a[i][1],&a[i][2]);
    }
    printf("矩阵数据录入完毕!\n");

    for(j=0; j<3; j++)
    {
        sum1 += a[0][j];
    }
    for(j=0; j<3; j++)
    {
        sum2 += a[2][j];
    }

    printf("第一行的和为: %d + %d + %d = %d\n",a[0][0],a[0][1],a[0][2],sum1);
    printf("第三行的和为: %d + %d + %d = %d\n",a[2][0],a[2][1],a[2][2],sum2);

    return 0;
}

追问

我只需要填一下那个主函数的空就行,不用整个程序都打给我啊,这样我看不懂啊

追答

额,好吧,你把你代码贴上来。我帮你填。你那图看不全

追问

什么代码

我只需要那两个大括号中间填什么,也就是填主函数就行了

追答

你写的这个程序都不完整,运行不通过的。主函数就是main()函数,不是已经有了吗?
而且我也没看见最后哪地方把结果输出

追问

最后有return什么的我没写了

追答

我还是不明白什么意思。意思是在子函数fun中把第一行和第三行的和输出???
而且你这个fun写得也不对啊,这是你自己写的还是??

追问

后面应该就是具体计算第一行和第三行的和了吧,然后再把值返回给s,我也没有后面具体的步骤,这是我同学发给我的

追答

不可能的,怎么可能返回两个值!!除非你通过传参的方式!
不过从你子函数fun的定义来看,只传进去一个数组,并没有其他变量传进去获取那两个和的值。
另外,int fun(int a[3][3])是非常不规范的写法,一般都是使用int fun(int *a, int len)这样的写法

追问

我也不清楚,这是c语言考试的题

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-30
include<stdio.h>
int main()

int i,,j;
int a[3][3];
int sum=0;
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++)
for(int j=0;j<3;j++)
{ if(i==0||i==2)
sum+=(a[i][j]);}
printf("%d", sum);
return 0;
第2个回答  2017-11-29

这个可以试试

第3个回答  2011-05-27
int a[2][2];
int sum=0;
for(int i=0;i<=2;i++)
for(int j=0;j<=2;j++)
scanf("%d",&a[i][j]);
for(i=0;i<=2;i++)
sum+=(a[1][i]+a[2][i]);
大致是这样的,你看看。。。
第4个回答  2020-05-15
int sum;
int i,j;
sum=0;
for(i=0;i<3;i+=2)
for(j=0;j<3;j++)
sum=sum+a[i][j];
return sum;
相似回答