且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《C语言及程序设计》程序填空——二维数组

更新时间:2022-10-12 12:45:06

返回:贺老师课程教学链接


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;
}

[参考解答](侧着看)
《C语言及程序设计》程序填空——二维数组