求高手帮忙看一下这个程序哪里错了,请帮我修改一下....谢谢啦~~

我想输出的是这个图形

#include <iostream>#include <stdlib.h>using namespace std;int main(int argc, char *argv[]){ int i,j,k,d; for(i=-3;i<=3;i++) { printf("\n"); } d=i; if(i<0)d=-i; for(j=1;j<=10-3*d;j++) { printf(" "); } for (k=1;k<=6*d+3;k++) { printf("B"); } system("PAUSE"); return 0;}

for(i=-3;i<=3;i++)

   {

        printf("\n");

        }


这里的  }  位置错了,应该在最后,就是这个 for 循环  应该一直到   system("PAUSE");    那之前才结束


修改后的 

#include <iostream>
#include <stdlib.h>
using namespace std;
int main(int argc, char *argv[])
{
       
    int i,j,k,d;
    for(i=-3;i<=3;i++)
    {
        printf("\n");           //这里不是for 循环结束
       
    d=i;
    if(i<0)
        d=-i;
    for(j=1;j<=10-3*d;j++)
    {
        printf(" ");
    }
    for (k=1;k<=6*d+3;k++)
    {
        printf("B");
    }
    }                   //   这里for 才结束
       
    system("PAUSE");   
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-07
#include "stdio.h"
void main()
{
int i,j,k,d;
for(i=-3;i<=3;i++) {
for(k=0;k<9-3*abs(i);k++){
printf(" ");
}
for(j=0;j<6*abs(i)+3;j++ {
printf("B");
}
printf("\n");
}
}
用C语言写了下
注意行 和空格及字母个数的关系即可
相似回答