关于最近学习循环与二维数组的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于最近学习循环与二维数组的问题相关的知识,希望对你有一定的参考价值。

最近在学习循环与二维数组,让我感到纳闷的是,两者单独练习我没有问题,一旦合在一起运用,脑子就转不过弯,也许是对数组和循环还没有理解透,当然逻辑也有很大的关系。就如下面这一道题目 

2008年北京奥运会,A国的运动员参与了n天的决赛项目(1<=n<=17)。现在要统计一下A国所获得的金,银,铜奖牌数目及总奖牌数。

输入格式

3

1 0 1

1 3 0

1 1 2

输出格式

3 4 2

#include <stdio.h>
int main()
{
    int n,i,a1,b1,c1,sum,a,b,c;
    while(scanf("%d",&n)!=EOF)
    {
        a1=0,b1=0,c1=0,sum=0;
        for(i=0;i<n;i++)
        {
            scanf("%d %d %d",&a,&b,&c);
            a1+=a;
            b1+=b;
            c1+=c;
            sum=a1+b1+c1;
        }
        printf("%d %d %d %d\n",a1,b1,c1,sum);
    }
    return 0;
}

  这是我想到的一种只用循环的方法,因为学了数组,所以想用二维数组试试看,结果不行,但是不知道是哪里出了错,希望有大佬能够指点。

#include <stdlib.h>

int main()
{
   int i,j,a[100][3],n,m;
   while(scanf("%d",&n)!=EOF)
   {
       for(i=0;i<n;i++)
       {
           for(j=0;j<3;j++)
           {
               scanf("%d",&a[i][j]);
           }
       }
       for(j=0;j<3;j++)
       {
           for(i=0;i<n;i++)
           {
               a[n][j]+=a[i][j];
               a[n][3]+=a[n][j];
           }
       }
       printf("%d %d",a[n][j],a[n][3]);
   }
   return 0;
}

  

 

以上是关于关于最近学习循环与二维数组的问题的主要内容,如果未能解决你的问题,请参考以下文章

汇编学习:二维数组遍历

js关于二维数组输出的问题

循环遍历二维数组的最快方法?

算法零基础学习关于二维数组的一些基础练习题 | leetcode1672158283248题解

算法零基础学习关于二维数组的一些基础练习题 | leetcode1672158283248题解

算法零基础学习关于二维数组的一些基础练习题 | leetcode1672158283248题解