《编程之美》practice
2024-08-27 14:30:07
1.2、中国象棋将帅问题
要求:只用一个字节存储变量,输出将帅不照面的所有可能位置。
思路简单,就是穷举让将和帅不在同一列即可,用char高四字节和低四字节分别存储将和帅的位置,位置编号从1到9。代码如下:
unsigned char ch;
for(ch=;ch< 0xff;ch++)
{
if(<=(ch & 0xf0)>> && (ch & 0xf0)>> <= && <=(ch & 0x0f) && (ch & 0x0f)<=)
{
if(((ch & 0xf0)>> )% != (ch & 0x0f)%)
{
printf("A=%d,B=%d\n",(ch & 0xf0)>>,ch & 0x0f);
}
}
}
更简洁的方法:用结构体的位字段,代码如下:
struct
{
unsigned char a:;
unsigned char b:;
}i;
for(i.a=;i.a<=;i.a++)
{
for(i.b=;i.b<=;i.b++)
{
if(i.a% != i.b%)
{
printf("A=%d,B=%d\n",i.a,i.b);
}
}
}
最新文章
- Linux系统资源查看
- Html注册表单示例
- HTML表单入门基础
- mysql高可用架构
- Centos6.7下安装配置VPN
- .bat脚本基本命令语法
- 如何免费访问Google?
- bind和unbind事件的应用
- 专题实验 PGA
- MVC Controller 链接到 API Controller 以及反向链接
- typedef的使用3——使用经过typedef定义的函数构成的函数数组
- ffmpeg只使用h264编译参数
- 傻瓜式硬盘重装win7系统图文加视频教程
- 通过wget工具下载指定文件中的URLs对应的资源并保存到指定的本地目录中去并进行文件完整性与可靠性校验
- Linux 用户及权限详解
- scrapy splash 之一二
- linux 网络管理的三种方式
- 03bootstrap_表格
- html5制作导航条
- jQuery 筛选器 链式编程操作