7-1 数字金字塔 (4.10) (20 分)

输入一个正整数repeat (repeat<10),做repeat次下列运算:

输入一个正整数n(n<10),输出n行数字金字塔。

输出时使用以下语句:

printf(" ");
printf("%d ", i);
printf("\n");

输入格式:
输入在第1行中给出1个正整数repeat(repeat<10)
接下来repeat行,每行给出一个正整数n(n<10)
输出格式:
按照对应顺序的n值,依次输出repeat个数字金字塔
(n行数字金字塔的格式如样例所示,注意:每个数字后面跟一个空格。)
输入样例:

2
5
2

输出样例:

        1 
      2 2 2 
    3 3 3 3 3 
  4 4 4 4 4 4 4 
5 5 5 5 5 5 5 5 5 
  1 
2 2 2 

代码:

#include <stdio.h>
void pyramid( int n ); 
int main()
{    
    int repeat;    
    int a[10];    
    scanf("%d", &repeat);
    for(int i=0;i<repeat;i++)
    {    
    scanf("%d",&a[i]);
    }
 for(int j=0;j<repeat;j++)
 {    
 pyramid(a[j]);
 }
    return 0;
    }
void pyramid(int n) 
{   
int i, j, k; //控制行数     
for (i = 1; i <= n; i++) {       //输出左边的空格,每行有n-i个空格            
for (j = 1; j <= 2*(n - i); j++)            
{                       
printf(" ");     }       //每一行左边空格输完后输出数字,n行n个数字(数字后面有一个空格)             
for (k = 1; k <= 2*i-1; k++)            
{                       
printf("%d ", i);               }          
printf("\n"); //换行         
}}
  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值