11.心得总结 2020-04-01

今天学习了二维数组,表达形式为a[ ] [ ]={ }。

以下为今日练习:

1.行求和,列求最大值

#include<stdio.h>

int main()

{

int a[3][3]={1,2,3,4,5,6,7,8,9};

int sum[3]={0};

int i,j;

int max[3]={0};

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{

sum[i]=sum[i]+a[i][j];

}

}

for(i=0;i<3;i++)

{

printf("%d ",sum[i]);

}printf("\n");

for(j=0;j<3;j++)

{

for(i=0;i<3;i++)

{

if(max[j]<a[i][j])

{

max[j]=a[i][j];

}

}

}

for(j=0;j<3;j++)

{

printf("%d ",max[j]);

}printf("\n");

2.行排序

#include<stdio.h>

int main()

{

int a[5][5]={

1,2,2,1,2,

5,6,7,8,3,

9,3,0,5,3,

7,2,1,4,6,

3,0,8,2,4,};

  int i,j;

  int m,n;

  int b;

  scanf("%d%d",&m,&n);

  for(i=0;i<5;i++)

  {

  for(j=0;j<5;j++)

  {

  b=a[m-1][j];

  a[m-1][j]=a[n-1][j];

  a[n-1][j]=b;

  }

  }

  for(i=0;i<5;i++)

  {

  for(j=0;j<5;j++)

  {

  printf("%d ",a[i][j]);

  }

  printf("\n");

  }

}

3.打印杨辉三角形的前10行

#include<stdio.h>

int main()

{

int a[10][10]={};

int i,j;

for(i=0;i<10;i++)

{

for(j=0;j<=i;j++)

{

a[i][j]=1;

if(i>1&&j<i&&j>0)

{

a[i][j]=a[i-1][j]+a[i-1][j-1];

}

printf("%3d ",a[i][j]);

}

printf("\n\n");

}

}

4.已知一个6*6的矩阵(方阵),把矩阵二条对角线上的元素值加上10,然后输出这个新矩阵

#include<stdio.h>

int main()

{

int a[6][6]={{1,2,3,4,5,6,},{1,2,3,4,5,6,},{1,2,3,4,5,6,},{1,2,3,4,5,6,},{1,2,3,4,5,6},{1,2,3,4,5,6}};

int i,j;

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

printf("%d ",a[i][j]);

}

printf("\n");

}

printf("\n");

for(i=0;i<6;i++)

{

for(j=0;j<6;j++)

{

if(i==j)

{

a[i][j]=a[i][j]+10;

}

if(i+j==5)

{

a[i][j]=a[i][j]+10;

}

printf("%d ",a[i][j]);

}

printf("\n");

}

5.矩阵交换行

#include<stdio.h>

int main()

{

int a[3][3]={1,5,9,7,3,2,8,4,6};

int i,j;

int b,n;

for(i=0;i<3;i++)

{

for(n=1;n<3;n++)

{

for(j=0;j<2;j++)

{

if(a[i][j]>a[i][j+1])

{

b=a[i][j];

a[i][j]=a[i][j+1];

a[i][j+1]=b;

}

}

  }

}

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{

printf("%d ",a[i][j]);

}

printf("\n");

}

}

6.分别求二维数组3*3的{10,12,13,14,15,16,17,18,19}对角线元素的和

#include<stdio.h>

int main()

{

int a[3][3]={10,12,13,14,15,16,17,18,19};

int i,j;

int sum=0,sum1=0;

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{

printf("%d ",a[i][j]);

}

printf("\n");

}

for(i=0;i<3;i++)

{

for(j=0;j<3;j++)

{

if(i==j)

{

sum=sum+a[i][j];

}

if(i+j==2)

{

sum1=sum1+a[i][j];

}

}

}

printf("%d %d",sum,sum1);

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容