编写程序输入下列图形

编写程序输入下列图形,第1张

程序本身并不难。用二重循环就可以实现,第枝判纤一个外循环,每一层循环完成一行的输出猛仿,然后分析这一行中要做些什么,每一小步用一个循环完成一行输冲野出内容结束后换行,整个程序就可以了。下面是三个程序的代码和运行的截图:

程序3:

#include"stdio.h"

int main()

{ int i,j

for(i=0i<4i++)

{ for(j=0j<3-ij++)

printf(" ")

for(j=0j<=ij++)

printf(" *")

printf("\n")

}

for(i=2i>-1i--)

{ for(j=0j<3-ij++)

printf(" ")

for(j=0j<=ij++)

printf(" *")

printf("\n")

}

return 0

}

程序4:

#include"stdio.h"

int main()

{ int i,j

for(i=0i<4i++)

{ for(j=0j<3-ij++)

printf(" ")

for(j=0j<=2*ij++)

printf(" *")

printf("\n")

}

for(i=2i>-1i--)

{ for(j=0j<3-ij++)

printf(" ")

for(j=0j<=2*ij++)

printf(" *")

printf("\n")

}

return 0

}

程序5:

#include"stdio.h"

int main()

{ int i,j

for(i=0i<4i++)

{ for(j=0j<3-ij++)

printf(" ")

for(j=0j<=2*ij++)

printf(" *")

for(j=0j<2*(3-i)j++)

printf(" ")

for(j=0j<=2*ij++)

printf(" *")

printf("\n")

}

return 0

}

首先介绍我们要先明白这个算法的原理:

1、如果有n行,那么第一行前面就需要 n-1 个空格来进行填充(后面的空格可以不用管)。

2、每一行中的数字都是左右对称的打印的。

下面介绍两种实现方法, 希望对你能有帮助。

第一种最简单的写法,便于初学者进行理解,就是直接进行打印:

void printfA()

{

     //打印出4行

    cout << "   1\n"

    cout <<"  121\n"

    cout <<" 12321\n"

    cout <<"1234321\n"

}

第二种方法,是可唤塌以控制打印行数的:

void printfB()

{

    //输入想要打印的行数

    int iCount = 0

    cout << string("Input 和余圆the iCount = ")

    cin >> iCount

    //打印金字塔型数字

    for(int i = 1 i<= iCount ++i)

    {

        //打印空格

 毁锋       for(int j = 1 j<=iCount - i ++j)

        {

            cout << string(" ")

        }

        //打印数字前半部分

        for (int k = 1 k <= i ++k)

        {

            cout << k 

        }

        //打印数字后半部分

        for (int k = i-1 k >0  --k)

        {

            cout << k 

        }

        cout <<  endl  //换行

    }

}

演示效果如下:

当然, 除了以上介绍的两种方法外, 还有很多其他的方法来实现,建议有机会可以多看些编程的书籍了解下。

望采纳, 谢谢。

#include<stdio.h>

int main()

{int n,i,j

 scanf("%d",&n)         //读入行数

 for(i=0i<ni++) 搜此       //共打印n行

 {for(j=0j<=ij++)      //先打印i个*号  

    printf("*"弯袜)

  for(j=0j<2*(n-i-1)j++)    //再打印中间的空格

    printf(" ")  

  for(j=0j<=ij++)      //再打印i个*号

    printf("*")

  printf("\n")          //一行结束,换行

 } 世闹迅

 return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12562422.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存