诗林 发表于 2025-11-4 20:44:36

考研机试题:打印数字菱形

形貌

打印一个由数字 0∼n 构成的菱形。
此中 n 位于正中心,数字靠近边沿时逐个递减,直至为 0。
比方,当 n=5时,图形如下所示:

          0
      0 1 0
      0 1
2 1 0
    0 1
2
3
2 1 0
0 1
2
3 4
3
2 1 0
0 1
2
3 4 5 4
3
2 1 0
0 1
2
3 4
3
2 1 0
    0 1
2
3
2 1 0
      0 1
2 1 0
      0 1 0
          0如今,给定 n,请你打印相应菱形。
输入形貌:

一个整数 n。
2≤n≤9
输出形貌:

输出相应菱形。
输入


2输出

    00 1 00 1
2 1 00 1 0    0输入


3输出

      0    0 1 00 1
2 1 00 1
2
3
2 1 00 1
2 1 0    0 1 0      0代码1

#include<iostream>using namespace std;void rhombus(int n){        int t=0;        //打印上半菱形        for(int j=n;j>=0;j--){                //打印空格                for(int i=0;i<j;i&#4
3;&#4
3;){                        printf(&#
34;&#
34;);                }                //打印前半数字                for(int i=0;i<=t;i&#4
3;&#4
3;){                        printf(&#
34;%d &#
34;,i);                }                //打印后半数字                for(int i=t-1;i>=0;i--){                        printf(&#
34;%d &#
34;,i);                }                t&#4
3;&#4
3;;                printf(&#
34;\n&#
34;);        }//打印下半菱形        for(int j=1;j<=n;j&#4
3;&#4
3;){                //打印空格                for(int i=0;i<j;i&#4
3;&#4
3;){                        printf(&#
34;&#
34;);                }                //打印前半数字                for(int i=0;i<=t-j-1;i&#4
3;&#4
3;){                        printf(&#
34;%d &#
34;,i);                }                //打印后半数字                for(int i=t-2-j;i>=0;i--){                        printf(&#
34;%d &#
34;,i);                }                printf(&#
34;\n&#
34;);        }}int main(){        int n;        cin>>n;        rhombus(n);        }代码2

#include<iostream>using namespace std;int n;//菱形每一行的输出void rhombusro(int k){        for(int i=0;i<n-k;i&#4
3;&#4
3;){                printf(&#
34;&#
34;);        }        for(int i=0;i<=k;i&#4
3;&#4
3;){                printf(&#
34;%d &#
34;,i);        }        for(int i=k-1;i>=0;i--){                printf(&#
34;%d &#
34;,i);        }        printf(&#
34;\n&#
34;);}int main(){        cin>>n;        for(int i=0;i<=n;i&#4
3;&#4
3;){                rhombusro(i);        }        for(int i=n-1;i>=0;i--){                rhombusro(i);        }}

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao12
3.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 考研机试题:打印数字菱形