数组习题2

二维数组

习题一

如图,一个学习小组有5个人,每个人有三门课的考试成绩。将各个数据保存到二维数组a5中,并求全组各科的平均成绩和总平均成绩。

 

#include "stdio.h"
int main()
{
 int a[5][3]={{80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85}},i;
 float b=0,c=0,d=0;
 for(i=0;i<5;i++)
{
   += a[i][0];
   += a[i][1];
   += a[i][2];//可以加一个大循环使程序更加简单。
}
 printf("math=%.2f\nc=%.2f\nfoxpro=%.2f\n总平均数=%f\n",d/5.0,b/5.0,c/5.0,(b+c+d)/15.0);
 

}

习题二

有一个3X4的矩阵,要求编程序求出其中值最大的那个元素的值,以及其所在的行号和列号。

#include "stdio.h"
int main()
{
   int a[3][4],i,j,max,row,colum;
   for(i=0;i<3;i++)
  {
       for(j=0;j<4;j++)
      {
           scanf("%d",&a[i][j]);
      }
  }
   max a[0][0];
   for(i=0;i<3;i++)
  {
       for(j=0;j<4;j++)
      {
           if(max<a[i][j])
          {
               max a[i][j];
               row i;
               colum j;
          }
      }
  }
   printf("max=%d\ni=%dj=%d",max,row,colum);
}

习题三

NO.I将一个二维数组行和列元素互换,存到另一个二维数组中。eg将 数组a【2】【3】转化为数组b【3】 【2】中

#include "stdio.h"
int main()
{
   int a[2][3]={{1,2,3},{4,5,6}},b[2][3]={0},i,j;   
   for (i=0;i<2;i++)
  {
       for(j=0;j<3;j++)
       b[j][i]=a[i][j];
  }
   for(i=0;i<3;i++)
  {
       for(j=0;j<2;j++)
      {
           printf("%12d",b[i][j]);
      }
       printf("\n");
  }
}

习题四

从键盘上输入9个整数,(对照九宫格的形式,输入三行,每行输入三个数)保存在二维数组中,按数组原来位置输出第一行和第一列的所有元素。

#include "stdio.h"
int main()
{
   int a[3][3],j,i;
   for(i=0;i<3;i++)
  {
       for(j=0;j<3;j++)
      {
           printf("a[%d][%d]=",i,j);
           scanf("%d",&a[i][j]);
      }
  }
#if(0)    
   for(i=0;i<3;i++)
  {
       for(j=0;j<3;j++)
      {
           if((1==&& 0==i) || (1==&& 2==i))
          {
               printf("%2d\n",a[i][j]);
          }
           else
          {
               if(1==i)
              {
                   printf("%d",a[i][j]);
              }
               if(1==&& 2==j)
              {
                   printf("\n");
              }
               continue;
          }
          
      }

  }
#endif
   for(i=0;i<3;i++)//优化代码;
  {
       for(j=0;j<3;j++)
      {
           if(1==|| 1==j)
          {
               printf("%6d",a[i][j]);
          }
           else
          {
               printf("%6c",' ');
          }
          
      }
        printf("\n");
  }
   
}
posted @ 2021-10-28 21:02  eliotJones  阅读(256)  评论(0)    收藏  举报