二维数组练习题参考答案.docVIP

  • 182
  • 0
  • 约2.91千字
  • 约 4页
  • 2016-11-30 发布于重庆
  • 举报
二维数组练习题参考答案

1、求一个4x4数组左下三角(包括主对角线)元素的和(数组元素的值读者自定)。 #include stdio.h main( ) { int i,j,s=0,x[4][4]; /* i,j是循环变量 */ /*给二维数组元素从键盘上读入数据并把元素输出到屏幕上*/ for(i=0;i4;i++) {for(j=0;j4;j++) {scanf(%d,x[i][j]); printf(%5d,x[i][j]); } printf(\n); } /*给二维数组元素从键盘上读入数据并把元素输出到屏幕上*/ /******求数组左下三角(包括主对角线)元素的和****/ for(i=0;i4;i++) for(j=0;j=i;j++) s=s+x[i][j]; /******求数组左下三角(包括主对角线)元素的和****/ /**********输出和**************/ printf(s=%5d\n,s); /**********输出和**************/ } 2、生成并输出一个杨辉三角的前7行,用金字塔的形式输出。 main( ) {int a[7][7], i, j; /*给二维数组第一列与对角线元素赋1值*/ for(i=0; i7; i++) { a[i][0]=1; a[i][i]=1; } /*给二维数组第一列与对角线元素赋1值*/ /*****给二维数组的其它元素赋值******/ for(i=2; i7; i++) for(j=1; ji; j++) a[i][j]=a[i-1][j-1]+a[i-1][j]; /*****给二维数组的其它元素赋值******/ /*输出三角形,用每行加空格的方式挤出金字塔*/ for(i=0; i7; 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; i6; i++) for(j=0; j6; j++) if(i=2 j=2) a[i][j]=1; else if(i=2 j2) a[i][j]=2; else if(i2 j=2) a[i][j]=3; else a[i][j]=4; /*****给二维数组的元素赋值******/ /******输出二维数组的元素*******/ for(i=0; i6; i++) { for(j=0; j6; 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; i3; i++) { for(j=0; j4; j++) {a[i][j]=k++; printf(%5d,a[i][j]); } printf(\n); } /*给二维数组赋值1 2 3 4 5 6 7 8 9 10 11 12,并按3行4列输出*/ /*求二维数组元素和及平均值*/ for(i=0; i3; i++) for(j=0; j4; j++) s=s+a[i][j]; ver=s/12; /*求二维数组元素和及平均值*/ /*求大于平均值二维数组元素和及

文档评论(0)

1亿VIP精品文档

相关文档