返回:贺老师课程教学链接
1、下面的程序,要输出行、列号之和为3的数组元素,请将程序补充完整。
#include <stdio.h> int main( ) { char ss[4][3]= {'A','a','f','c','B','d','e','b', 'C','g','f','D'}; int x,y,z; for (x=0; ______(1)______; x++) for (y=0; ______(2)______ ; y++) { z=x+y; if (______(3)______) printf("%c\n",ss[x][y]); } return 0; }
2、下面程序可求出矩阵a的主对角线上的元素之和(即行号和列号相等的元素),请填空使程序完整。
#include <stdio.h> int main( ) { int a[3][3]= {1,3,5,7,9,11,13,15,17}; int ______(1)______; int i; for (i=0 ; i<3 ; i++) sum += ______(2)______; printf("sum=%d",sum); return 0; }
3、下面程序的功能是将二维数组a中每个元素向右移一列,最右一列换到最左一列,移后的结果保存到b数组中,并按矩阵形式输出a和b。请填空使程序完整。
数组a如下:
4 5 6
1 2 3
移完后的数组b如下
6 4 5
3 1 2
#include <stdio.h> int main( ) { int a[2][3]={{4,5,6},{1,2,3}}, b[2][3], i,j; //输出a for (i=0; i<2 ; i++) { for (j=0; j<3; j++ ) { printf("%5d",a[i][j]); } ______(1)______; } //a中元素右移得到b for (i=0; i<2 ; i++) for (j=0; j<3 ; j++ ) b[i][j]=a[i][______(2)______]; //输出b for (i=0; i<2; i++) { for (j=0; j<3 ; j++) { printf("%5d",b[i][j]); } printf("\n"); } return 0; }
[参考解答](侧着看)
