【超星】程序设计基础 字母矩阵

题目名称:字母矩阵

题目描述:用循环语句控制打印如下图形,其中输出的每个字母占用2个字符宽度(空格在前,字母在后)。

【超星】程序设计基础 字母矩阵_第1张图片

  

输入:无

输出:如上图字母矩阵

说明:请同学们根据字母、位置的规律实现该程序。打表爽一时,考试两行泪~

下面先给出最基础的解法,比较繁琐

#include

int main(void)

{

    char x,y,i=1,j;

    while(i<=6){j=1;y=1;

        while(j<=9){

        if(63+i+j<=73)

        printf(" %c", 63+i+j);

        if(63+i+j>73){

        printf(" %c", 64+y);

        y++;}j++;}

        i++;printf("\n");}

    while(i>6&&i<=11){j=1;y=1;

        while(j<=9){

        if(75-i+j<=73)

        printf(" %c", 75-i+j);

        if(75-i+j>73){

        printf(" %c", 64+y);

        y++;}j++;}

        i++;printf("\n");}

        return 0;

}

下面是用队列思想循环左移和循环右移

 #include
int main(void)
{
    char a[10]={'A','B','C','D','E','F','G','H','I'};     //初始化赋值
    int j;
    for(int i=0;i<6;i++)
    {
        for(j=0;j<9;j++)
        {
            printf(" %c",a[(j+i)%9]);             //循环左移一位
        }
        printf("\n");
    }
    for(int i=0;i<5;i++)                        //循环打印行
    {
        for (j=0;j<9;j++)                     //打印每行的数
        {
            printf(" %c",a[(4+j-i)%9]);           //循环右移四位
        }
        if(i!=4)                                     //保证最后不换行
            printf("\n");
    }
    return 0;
}

你可能感兴趣的:(矩阵,线性代数)