小白入门.输入金字塔图形,行数有输入控制.(循环嵌套)

#include<stdio.h>
void main()
{
    int i,j,n;
    printf("Please input n:\n");
    scanf("%d",&n);
    if(n<0)
        printf("行数错误!\n");
    else
    {
        for(j=1;j<=n;j++)
        {
            for(i=1;i<=j;i++)
            {
                printf("*");
            }
            printf("\n");
        }
    }
} 

有两个控制循环计数的变量i,j.

找到两个控制循环变量的关系及 i,j,之间的关系。

例:金字塔        *

       ***

       *****

       *******           一行增加了两个*,而控制行数的变量j,与控制每行个数的变量i,

          关系为  i= 2*j-1  。所以内层循环控制条件为 for(i=1;i<=2*j-1;i++)

if(n<0)
        printf("Input error!");
    else
    {
        for(j=1;j<=n;j++)
        {
            for(i=1;i<=2*j-1;i++)
            {
                printf("*");
            }
            printf("\n");
        }
    }

 再例:倒三角    *******

         *****

         ***

            *                     控制行数 j,与个数 i,之间的关系   2*n+1-2*j     (n为输入的金字塔行数)

 

字母金字塔:

#include<stdio.h>
void main()
{
    int i,j,n;
    char ch='A';
    printf("please input n:\n");
    scanf("%d",&n);
    if(n<0)
        printf("Input error!\n");
    else
    {
        for(j=1;j<=n;j++)
        {
            for(i=1;i<=j;i++)
            {
                printf("%c",ch);
            }
            printf("\n");
            ch++;
        }
    }
}

 

posted @ 2019-06-03 08:07  nanaa  阅读(602)  评论(0)    收藏  举报