设为首页 | 加入收藏夹

1993年美国计算机程序设计资格赛试题

2012-06-02 18:03:52 作者:计算机基础知识试题 录入:应序康 访问:3050 次 被顶:1 次 字号:【
摘要:第一题: 分数变小数 写出一个程序,接受一个以 N/ D的形式输入的分数,其中 N 为分子, D 为分母,输出它的小数形式。如果它的小数形式存在循环节, 要将其用括号括起来。例如: 1 / 3 =. 33333 . . .表示为 .(3 )...
第一题: 分数变小数
    写出一个程序,接受一个以 N/ D的形式输入的分数,其中 N 为分子, D 为分母,输出
它的小数形式。如果它的小数形式存在循环节, 要将其用括号括起来。例如: 1 / 3 =
. 33333 . . .表示为 .(3 ) ,又如 41/ 333 = .123123123 . . .表示为 .(123 )。
一些转化的例子:
1 / 3 = .(3 )
22 / 5 = 4 . 4
1 / 7 = .(142857 )
3 / 8 = . 375
45 / 56 = . 803(571428 )
用上面的分数和 11/ 59 来测试你的程序。
运行举例:
ENTER N ,D : 1 7
1 / 7 = .(142857)
本题中,0≤N≤65535, 0≤D≤65535,设运算结果小数点后最多保留 100 位。
第二题: 质数竖式
下面的竖式是一个乘法运算问题,它的每个 * 号可以代入一个数字,这个数字属于一
个特定的由 N 个数字组成的集合。如果这个集合是 {2, 3, 5, 7} 那么这个竖式称作 “质数
竖式” 。
* * *
× * *
* * * *
· 8 ·* * * *
* * * * *
    写一个程序找出对应于集合{1 ,2 ,3 , 4, 5, 6, 7, 8, 9}的任意一个子集的所有竖式。用
集合{2 ,3 ,4 ,6 ,8}和质数集合{2, 3, 5, 7}来测试你的程序。
运行举例:
ENTER A SET OF DIGITS:23468
2 2 2
× 2 2
4 4 4 < 还有 3 个竖式未显示 >
4 4 4
4 8 8 4
The number of unique solutions = 4
第三题: 6×6棋子挑战
观察下面的 6×6 棋盘,你可以看到 6 个棋子放在了这个棋盘上,使得每行每列和每
个对角线上只有一个棋子(对角线不仅仅是两个主对角线,它是指从东南到西北和从西南
到东北的所有对角线)。

1 2 3 4 5 6
1 o
2 o
3 o
4 o
5 o
6 o
    上面那组解被描述为: 2 4 6 1 3 5,即第 1 至第 6 行每行中棋子所在的列。
ROW         1 2 3 4 5 6
COLUMN 2 4 6 1 3 5
这是 6×6 棋子挑战的一组解。写一个程序找出所有不同的解,以上面所列的形式打
印出来,并统计总数(对称和旋转后相同的解视为不同的解)。
运行举例:
2 4 6 1 3 5
· 9 ·3 6 2 5 1 4
? ? ? ? ? ?
? ? ? ? ? ?
THERE ARE ? SOLUTIONS TO THE
6×6 CHECKER CHALLENGE .
第四题: 跳棋难题
大小为 3 的 “跳棋难题” 包括 3 个白石子、 3 个黑石子和一个有 7 个洞的长条木头。
同样颜色的石子分别放在长条木头的每一端,中间的洞为空。
初始状态: WWW   B B B
目标状态: B B B WWW
为了解决这个难题,采用两种移动方法。将一个石子移入相邻的空洞或者跳过一个
相反颜色的石子进入空洞(朝目标方向)。你不可以后退或者跳过两个石子。一个大小为
N 的 “跳棋难题” 包括 N 个白石子、 N 个黑石子和 2N + 1 个洞。
写一个程序,解决大小为 N( N≤10)的跳棋难题,并显示出每步移动后的状态。用 W
代表白石子, B代表黑石子,空格代表空洞。用 N = 3 和 N = 4 来测试你的程序。
运行举例:
N = 3
WWW B B B
WWW B B B
WW B W B B
W W B W B B
W B W W B B
W B W B W B
W B W B W B
W B W B BW
W B B W BW
B W B W BW
B W B W BW
B B W W BW
B B W B W W
B B W B WW
B B B WWW
B B B WWW
第五题: 全部拉丁方阵
下面的数字方阵
1 2 3 4 5
· 0 1 ·2 1 4 5 3
3 4 5 1 2
4 5 2 3 1
5 3 1 2 4
是一个 5×5 的拉丁方阵,其中数字 1 到 5 在每行每列中只出现一次。
写一个程序,计算第一行是:
1 2 3 4 5 … N
的 N×N 拉丁方阵的个数。
你的程序应该对 2 到 6 中的任意一个 N 都有效。
用 N = 4 和 N = 5 来测试你的程序。
运行举例:
ENTER A WHOLE NUMBER (2 - 6) : 4
THE NUMBER OF 4 ×4 LATIN
SQUARES IS 24 .

打印本文   加入收藏   返回顶部   关闭窗口Tags:计算机程序设计资格赛,计算机程序设计资格赛试题,计算机程序设计试题  
  • 上一篇:没有了
  • 下一篇:1993年美国计算机程序设计总决赛试题
  • 参与评论
    共有评论 0网友评论列表
    CopyRight © 2009-2012 计算机基础知识 Inc.All Rights Reserved. 备案:苏ICP备09028880号