查看: 259954|回复: 8104

新人求助数独算法

[复制链接]
  • TA的每日心情
    无聊
    2016-11-17 15:41
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2016-9-21 22:29:17 | 显示全部楼层 |阅读模式
    最近刚刚把标准C函数一些基础的看完,
            自己试着做了一下数独,但是问题来了
                    我该用什么算法来往数组里填写数字呢?
                    单纯的for 和 if 很容易造成最后的程序死循环
                    (递归学的不太好,主要是弄不明白他到底是怎么实现的)
    以下是代码:
    [C] 纯文本查看 复制代码
    #include <stdio.h>
    int main(){
    	int arr[9][3][3]={0};
    	int x=0,y=0,z=0,q=0;
    	for (x=0;x<=8;x++){
    		for(y=0;y<=2;y++){
    			for(z=0;z<=2;z++){
    				arr[x][y][z]=x;
    			}
    		}
    	}
    	for(q=0;q<=8;q+=3){
    		for(y=0;y<=2;y++){
    			for(x=q;x<=q+2;x++){
    				for(z=0;z<=2;z++){
    					printf("%d ",arr[x][y][z]);
    				}
    				printf(" ");
    			}
    		printf("\n");
    		}
    		printf("\n");
    	}
    	return 0;
    }
    

    各位大神,求助,给个思路也行啊,我回去慢慢研究

    点评

    你可以启用bug模式,调试断点查看数据的运行状态。看看哪里出错。  发表于 2016-10-10 23:19
    其实你可以用随机函数去实现,在填充前判断是否为需要的。最后打印就行了。百度找到:c语言随机数生成函数  发表于 2016-10-7 17:55
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2016-11-17 15:41
  • 签到天数: 8 天

    [LV.3]偶尔看看II

     楼主| 发表于 2016-9-21 22:29:47 | 显示全部楼层
    现在打印效果如下
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2016-11-17 15:41
  • 签到天数: 8 天

    [LV.3]偶尔看看II

     楼主| 发表于 2016-9-21 22:30:25 | 显示全部楼层
    1 1 1 1 1  2 2 2 2 2  3 3 3 3 3  
    4 4 4 4 4  5 5 5 5 5  6 6 6 6 6
    7 7 7 7 7  8 8 8 8 8  9 9 9 9 9
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2019-2-12 22:05
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2016-9-21 22:39:41 | 显示全部楼层
    谢谢楼主的分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2016-9-21 22:52:40 | 显示全部楼层
    谢谢楼主的分享
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2016-9-21 23:18:47 | 显示全部楼层
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2016-9-21 23:34:52 | 显示全部楼层
    支持,看起来还是可以的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2016-9-21 23:50:29 | 显示全部楼层
    非常感谢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2016-9-22 04:20:13 | 显示全部楼层
    支持,看起来还是可以的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2015-10-24 10:52
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    发表于 2016-9-22 05:54:07 | 显示全部楼层
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    指导单位

    江苏省公安厅

    江苏省通信管理局

    浙江省台州刑侦支队

    DEFCON GROUP 86025

    旗下站点

    邮箱系统

    应急响应中心

    红盟安全

    联系我们

    官方QQ群:112851260

    官方邮箱:security#ihonker.org(#改成@)

    官方核心成员

    Archiver|手机版|小黑屋| ( 苏ICP备2021031567号 )

    GMT+8, 2024-5-7 22:18 , Processed in 0.052202 second(s), 15 queries , Gzip On, MemCache On.

    Powered by ihonker.com

    Copyright © 2015-现在.

  • 返回顶部