#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得到每行除中间数之外两边数的个数;