编程解决数独问题,网上查了很多资料,大多数的C语言程序虽然可以运行出结果,但是往往定义了很多全局数组变量来存储待解决数独中每一个空的状态信息(如:通过扫描整个数独表,记录待填的空的位置;记录每个待填空所在行和列已经有哪些值,接下来可以填哪些值等信息),这导致代码中全局变量很多,全局变量在整个程序中到处调用,在没有足够注释的情况下整个程序可读性不高,代码结构不是很清楚。 本文下面给出的C程序中没有使用多少临时变量,当然此程序没有定义那么多全局变量存储数独解决过程的状态信息,可能导致运行时间稍微长一些,不过在我的环境下进行的几次测试,运行出结果的时间基本都在1秒以内(偶尔也会有7、8