这个金字塔上面5层我能打出来,下面4层该怎样进行呢?
我是按照一层一层的打前面5层,能不能一列一列的打印这个金字塔呢,如果能该如何实现?
把i循环反过来不就行了?
//...
for(i=x/2;i>=1;i--){
//里面j循环和打印和前面五行一模一样
}
完整:
#include<stdio.h>
void pyramid(int x){
int i,j;
int m,n;
for(i=1;i<=x/2+1;i++){
for(j=0;j<2*i-1;j++){
printf("*");
}
for(j=0;j<x-i;j++){
printf(" ");
}
printf("\n"); //少了一个分号
}
for(i=x/2;i>=1;i--){
for(j=0;j<2*i-1;j++){
printf("*");
}
for(j=0;j<x-i;j++){
printf(" ");
}
printf("\n"); //少了一个分号
}
}
就C的打印机制来说,是不能竖着打印的。