【C语言】用循环结构输出数字金字塔

#include <stdio.h>
void main(){
  int i,j,k;
  for(i=1;i<=9;i++){   //控制输出的行数
	  for(j=9;j>i;j--){
		  printf(" ");  //控制输出的空格
	  }
	  for(k=1;k<=(2*i+1)/2;k++){
		  printf("%c",48+k);
	  }
	  for(k=(2*i+1)/2;k>1;k--){
	      printf("%c",48+k-1);
	  }
	  printf("\n");
  }
}

输出结果为:

总结:第一行  2*i+1个数,每行最中间数是1     第二行  2*i+1个数,每行最中间数是2   第三行2*i+1个数  每行最中间数是3  以此类推(此处i代表行数)

个数除2得到每行除中间数之外两边数的个数;

发布了52 篇原创文章 · 获赞 69 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/lbqlzch/article/details/86596850