【20171120】C语言每日一练

【程序46】打印杨辉三角

#include 
#include 
//实现思想:
//1.第一列和对角线都为1;
//2.除了对角线和第一列之外,其他元素都是上面的元素和左上角的元素和;
//3.用i代替行,j代替列;
//4.打印出十行
int main()
{
    int i,j;
    int a[11][11];
    for(i = 1;i<11;i++)
    {
        a[i][i] = 1;
        a[i][1] = 1;
    }
    for(i = 3;i < 11;i++)
    {
        for(j = 2;j <=i-1;j++)
        {
            a[i][j] = a[i-1][j] + a[i-1][j-1];
        }
    }
    for(i = 1;i <11;i++)
    {
        for(j = 1;j <= i;j++)
        {
            printf("%4d",a[i][j]);

        }
        printf("\n");
    }
}

运行结果:

【20171120】C语言每日一练_第1张图片

【程序47】输出三角形

#include
#include
int main()
{
    int i,j,k;
    for(i = 1;i <=5;i++)
    {
        for(k = 5-i;k >=1;k--)
        {
            printf(" ");
        }

        for(j = 1;j <= 2*i-1;j++)
        {
            printf("#");
        }
        printf("\n");
    }
}

运行结果:
【20171120】C语言每日一练_第2张图片

【举一反三系列】
【输出菱形】

#include
#include
int main()
{
    int i,j,k;
    for(i = 1;i <=5;i++)
    {
        for(k = 5-i;k >=1;k--)
        {
            printf(" ");
        }

        for(j = 1;j <= 2*i-1;j++)
        {
            printf("#");
        }
        printf("\n");
    }

    for(i = 1;i <=4;i++)
    {
        for(k = 1;k <=i;k++)
        {
            printf(" ");
        }
        for(j =7;j >= 2*i-1;j--)
        {
            printf("#");
        }
        printf("\n");
    }
}

运行结果:
【20171120】C语言每日一练_第3张图片

输出:
123456
612345
561234
456123

#include
#include
int main()
{
    int i,j,k;
    printf("请输入n的值:\n");
    scanf("%d",&k);
    for(i = k-1;i >=0;i--)
    {
        for(j = 0;j < k;j++)
        {
            printf("%d",(i+j)%k + 1);
        }
        printf("\n");
    }
}

运行结果:
【20171120】C语言每日一练_第4张图片

这个和数据结构的循环链表有点像,可以放在一起思考。

你可能感兴趣的:(C语言经典100例)