2010計(jì)算機(jī)等考二級(jí)C:50套上機(jī)程序填空題(18)

字號(hào):

2010計(jì)算機(jī)等考二級(jí)C:50套上機(jī)程序填空題(18)

    35、給定程序中,函數(shù)fun的功能是:有N×N矩陣,將矩陣的外圍元素順時(shí)針旋轉(zhuǎn)。操作順序是:首先將第一行元素的值存入臨時(shí)數(shù)組r,然后使第一列成為第一行,最后一行成為第一列,最后一列成為最后一行,臨時(shí)數(shù)組中的元素成為最后一列。例如,若N=3,有下列矩陣:
    1 2 3
    4 5 6
    7 8 9計(jì)算結(jié)果為
    7 4 1
    8 5 2
    9 6 3
    請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。
    注意:源程序存放在考生文件夾下的BLANK1.C中。
    不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
    #include
    #define N 4
    void fun(int (*t)[N])
    { int j ,r[N];
    for(j=0; j
    for(j=0; j
    /**********found**********/
    t[0][N-j-1]=t[j][___1___ ];
    for(j=0; j
    t[j][0]=t[N-1][j];
    /**********found**********/
    for(j=N-1; j>=0;___2___ )
    t[N-1][N-1-j]=t[j][N-1];
    for(j=N-1; j>=0; j--)
    /**********found**********/
    t[j][N-1]=r[___3___];
    }
    main()
    { int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j;
    printf("\nThe original array:\n");
    for(i=0; i
    { for(j=0; j
    }
    fun(t);
    printf("\nThe result is:\n");
    for(i=0; i
    { for(j=0; j
    }
    }
    36、給定程序中,函數(shù)fun的功能是:有N×N矩陣,根據(jù)給定的m(m<=N)值,將每行元素中的值均右移m個(gè)位置,左邊置為0。例如,N=3,m=2,有下列矩陣
    1 2 3
    4 5 6
    7 8 9程序執(zhí)行結(jié)果為
    0 0 1
    0 0 4
    0 0 7
    請(qǐng)?jiān)诔绦虻南聞澗€處填入正確的內(nèi)容并把下劃線刪除,使程序得出正確的結(jié)果。
    注意:源程序存放在考生文件夾下的BLANK1.C中。
    不得增行或刪行,也不得更改程序的結(jié)構(gòu)!
    #include
    #define N 4
    void fun(int (*t)[N], int m)
    { int i, j;
    /**********found**********/
    for(i=0; i
    { for(j=N-1-m; j>=0; j--)
    /**********found**********/
    t[i][j+___2___ ]=t[i][j];
    /**********found**********/
    for(j=0; j<___3___; j++)
    t[i][j]=0;
    }
    }
    main()
    { int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j, m;
    printf("\nThe original array:\n");
    for(i=0; i
    { for(j=0; j
    printf("%2d ",t[i][j]);
    printf("\n");
    }
    printf("Input m (m<=%d): ",N);scanf("%d",&m);
    fun(t,m);
    printf("\nThe result is:\n");
    for(i=0; i
    { for(j=0; j
    printf("%2d ",t[i][j]);
    printf("\n");
    }
    }