admin 管理员组

文章数量: 1086019


2024年4月21日发(作者:3号小火车叫什么名字)

二维数组练习题参考答案

1、求一个4x4数组左下三角(包括主对角线)元素的和(数组元

素的值读者自定)。#include "stdio.h"

main( )

{ int i,j,s=0,x[4][4]; /* i,j是循环变量*/

/*给二维数组元素从键盘上读入数据并把元素输出到屏幕上*/

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

{for(j=0;j<4;j++)

{scanf("%d",&x[i][j]);

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

}

printf("n");

}

/*给二维数组元素从键盘上读入数据并把元素输出到屏幕上*/

/******求数组左下三角(包括主对角线)元素的和****/

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

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

s=s+x[i][j];

/******求数组左下三角(包括主对角线)元素的和****/

/**********输出和**************/

printf("s=%5dn",s);

/**********输出和**************/

}

2、生成并输出一个杨辉三角的前7行,用金字塔的形式输出。

main( )

{int a[7][7], i, j;

/*给二维数组第一列与对角线元素赋1值*/

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

{ a[i][0]=1;

a[i][i]=1;

}

/*给二维数组第一列与对角线元素赋1值*/

/*****给二维数组的其它元素赋值******/

for(i=2; i<7; i++)

for(j=1; j<="" p="">

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

/*****给二维数组的其它元素赋值******/

/*输出三角形,用每行加空格的方式挤出金字塔*/

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

{ for(j=0; j<=7-i; j++)

printf( " ");

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

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

printf("n");

}

/*输出三角形,用每行加空格的方式挤出金字塔*/

}

3、找规律自动填充如图所示的6x6方阵。

111222

111222

111222

333444

333444

333444

main( )

{int a[6][6], i, j;

/*****给二维数组的元素赋值******/

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

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

if(i<=2 && j<=2)

a[i][j]=1;

else if(i<=2 && j>2)

a[i][j]=2;

else if(i>2 && j<=2)

a[i][j]=3;

else

a[i][j]=4;

/*****给二维数组的元素赋值******/

/******输出二维数组的元素*******/

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

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

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

printf("n");

}

/******输出二维数组的元素*******/

}

4、求3x4数组中大于等于平均值的所有数组元素的和,并统计满

足条件元素的个数(数组元素的值读者自定)。

#include "stdio.h"

main( )

{int a[3][4],i,j,k=1;/*i,j为循环控制变量,k为二维数组赋值变量*/

float s=0,ver;/*s为二维数组元素的和,ver为平均值变量*/

/*给二维数组赋值1 2 3 4 5 6 7 8 9 10 11 12,并按3行4列输

出*/

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

{ for(j=0; j<4; j++)

{a[i][j]=k++;

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

}


本文标签: 元素 数组 输出 赋值 对角线