aa

#include <stdio.h>
#define SIZE	8

char cb[SIZE][SIZE];
char tile = 'A';
size_t dr = 5 , dc = 7;

void cover(char cb[SIZE][SIZE] , size_t tr , size_t tc , size_t dr , size_t dc , size_t size) {

	if ( 1 == size )
		return ;

	char t = tile++;
	size_t s = size / 2;

	if ( dr < tr + s  &&  dc < tc + s )
		cover(cb , tr , tc , dr , dc , s);
	else {

		cb[tr + s - 1][tc + s - 1] = t;
		cover(cb , tr , tc , tr + s - 1 , tc + s - 1 , s);
	}

	if ( dr < tr + s  &&  dc >= tc + s )
		cover(cb , tr , tc + s , dr , dc , s);
	else {

		cb[tr + s - 1][tc + s] = t;
		cover(cb , tr , tc + s , tr + s - 1 , tc + 1 , s);
	}

	if ( dr >= tr + s  &&  dc < tc + s )
		cover(cb , tr + s , tc , dr , dc , s);
	else {
		cb[tr + s][tc + s - 1] = t;
		cover(cb , tr + s , tc , tr + s , tc + s - 1 , s);
	}

	if ( dr >= tr + s  && dc >= tc + s )
		cover(cb , tr + s , tc + s , dr , dc , s);
	else {

		cb[tr + s][tc + s] = t;
		cover(cb , tr + s , tc + s , tr + s , tc + s , s);
	}
}

void print(char cb[SIZE][SIZE]) {

	size_t i , j;
	for ( i = 0 ; i < SIZE ; i++ ) {
		
		for ( j = 0 ; j < SIZE ; j++ )
			printf("%c  " , cb[i][j]);
		printf("\n\n");
	}	
}
int main() {

	cb[dr][dc] = '*';
	cover(cb , 0 , 0 , dr , dc , SIZE);
	print(cb);
	return 0;
}


抗衰老的减肥快乐的设计费 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值