7104 - 试题E:打印图形 13'

通过次数

9

提交次数

16

时间限制 : 1 秒
内存限制 : 128 MB
15808351645319.png

源程序:

#include <stdio.h>

#include <stdlib.h>

void show(char* buf, int w){

       int i,j;

       for(i=0; i<w; i++){

               for(j=0; j<w; j++){

                       printf("%c", buf[i*w+j]==0? ' ' : 'o');

               }

               printf("\n");

       }

}

void draw(char* buf, int w, int x, int y, int size){

       if(size==1){

               buf[y*w+x] = 1;

               return;

       }

       int n = _________________________ ; //填空

       draw(buf, w, x, y, n);

       draw(buf, w, x-n, y ,n);

       draw(buf, w, x+n, y ,n);

       draw(buf, w, x, y-n ,n);

       draw(buf, w, x, y+n ,n);

}

int main()

{

       int N = 3;

       int t = 1;

       int i;

       for(i=0; i<N; i++) t *= 3;

       char* buf = (char*)malloc(t*t);

       for(i=0; i<t*t; i++) buf[i] = 0;

       draw(buf, t, t/2, t/2, t);

       show(buf, t);

       free(buf);

       return 0;

}

输入

 

输出

【答案提交】

只填写缺少的内容,不要书写任何题面已有代码或说明性文字。

样例

输入


                            

输出


                            

来源

第九届蓝桥杯大赛个人赛省赛(软件类)C/C++ 大学A组