C++经典编程题.docx
- 文档编号:3244896
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:13
- 大小:28.21KB
C++经典编程题.docx
《C++经典编程题.docx》由会员分享,可在线阅读,更多相关《C++经典编程题.docx(13页珍藏版)》请在冰豆网上搜索。
C++经典编程题
C++经典编程题
1.给定等式ABCDE 其中每个字母代表一个数字,且不同数字对应不
DFG 同字母。
编程求出这些数字并且打出这个数字的
+ DFG 算术计算竖式。
───────
XYZDE
2.A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些
人参加了竞赛:
(1)A参加时,B也参加;
(2)B和C只有一个人参加;
(3)C和D或者都参加,或者都不参加;
(4)D和E中至少有一个人参加;
(5)如果E参加,那么A和D也都参加。
3.打印一个N*N的方阵,N为每边 N=15打印出下面图形
字符的个数(3<N<20=,要求最 TTTTTTTTTTTTTTT
外一层为"T",第二层为"J",从第三层 TJJJJJJJJJJJJJT
起每层依次打印数字1,2,3,... TJ11111111111JT
(右图以N为15为例) TJ12222222221JT
TJ12333333321JT
TJ12344444321JT
TJ12345554321JT
TJ12345654321JT
TJ12345554321JT
TJ12344444321JT
TJ12333333321JT
TJ12222222221JT
TJ11111111111JT
TJJJJJJJJJJJJJT
TTTTTTTTTTTTTTT
4.在N行N列的数阵中,数K(1〈=K〈=N)在每行和每列中出现且仅
出现一次,这样的数阵叫N阶拉丁方阵。
例如下图就是一个五阶拉丁方阵。
编一程序,从键盘输入N值后,打印出所有不同的N阶拉丁方阵,并统计个数。
12345
23451
34512
45123
51234
5.输入一个十进数,将其转换成N进制数(0 6.矩阵中填数.当给出N*N的矩阵,要求用程序填入下列形式的数: ①倒填,例如N=5 ②蛇形填数 ③回转填数 ┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐ ┌─┬─┬─┬─┬─┐ │25│24│23│22│21│ │1│3│4│10│11│ │1│16│15│14│13│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ │20│19│18│17│16│ │2│5│9│12│19│ │2│17│24│23│12│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ │15│14│13│12│11│ │6│8│13│18│20│ │3│18│25│22│11│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ │10│9│8│7│6│ │7│14│17│21│24│ │4│19│20│21│10│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ │5│4│3│2│1│ │15│16│22│23│25│ │5│6│7│8│9│ └─┴─┴─┴─┴─┘ └─┴─┴─┴─┴─┘ └─┴─┴─┴─┴─┘ 7.读入一行文本,包含若干个单词(以空格间隔,%结尾)。 将其中以A开头的 单词与以N结尾的单词,用头尾交换的办法予以置换。 8.输入两个正整数X,Y,将X,Y化为二进制数,然后将这两个二进制数作二进 制加法运算,再将结果化为十进制数输出。 9.四人玩火柴棍游戏,每一次都是三个人赢,一个人输。 输的人要按赢者手中的火柴 数进行赔偿,即赢者手中有多少根火柴棍,输者就赔偿多少根。 现知道玩过四次后, 每人恰好输过一次,而且每人手中都正好有16根火柴。 问此四人做游戏前手中各有 多少根火柴? 编程解决此问题。 10.如图1所示,编写程序计算 ┎┰┰┰┰┰┰┰┰┰┒ 大大小小正方形共有多少? 当最小 ┠╂╂╂╂╂╂╂╂╂┨ 正方行边长为1时,它们的总面积 ┠╂╂╂╂╂╂╂╂╂┨ 共为多少? ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┠╂╂╂╂╂╂╂╂╂┨ ┖┸┸┸┸┸┸┸┸┸┚ 11.巧排数字。 将1、2、...、20这20个数排成一排,使得相邻的两个数之 和为一个素数,且首尾两数字之和也为一个素数。 编程打印出所有的排法。 12.下图是一个集装箱仓库,阴影部分表示有集装箱存放不能通过,无阴影处为临时通 道。 当有人要从入口处到达出口处时,必须寻找可通过路线,请你找出可完成这个过程 的最方便(即用最短路线)到达出口处的路径。 ┎┰┰┰入口┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┰┒ ┠╂╂╂──╂╂╂╂┸┸╂┸┸╂┸┸╂┸┸╂╂╂╂┸┸╂╂╂┨ ┠╂╂╂──╂┸┸╂──╂┰┰╂┰┰╂──╂╂╂╂──╂╂╂┨ ┠╂╂╂──╂┰┰╂┰┰╂╂╂╂╂╂╂──╂┸┸╂──╂╂╂┨ ┠╂╂╂──╂╂╂╂╂╂╂╂╂╂╂╂╂┰┰╂┰┰╂┰┰╂╂╂┨ ┠╂╂╂──╂┸┸╂┸┸╂┸┸╂┸┸╂┸┸╂┸┸╂┸┸╂╂╂┨ ┠╂╂╂──╂┰┰╂┰┰╂┰┰╂──╂┰┰╂──╂┰┰╂╂╂┨ ┠╂╂╂──╂╂╂╂╂╂╂╂╂╂──╂╂╂╂──╂╂╂╂╂╂┨ ┠╂╂╂──╂╂╂╂┸┸╂┸┸╂──╂╂╂╂──╂┸┸╂╂╂┨ ┠╂╂╂──╂╂╂╂┰┰╂┰┰╂┰┰╂╂╂╂┰┰╂──╂╂╂┨ ┖┸┸┸──┸┸┸┸┸┸┸┸┸┸┸┸┸┸┸┸┸┸┸出口┸┸┸┚ 13.有N个硬币(N为偶数)正面朝上排成一排,每次将N-1个硬币翻过来放在原位 置,不断地重复上述过程,直到最后全部硬币翻成反面朝上为止。 编程让计算机把 翻币的最简过程及翻币次数打印出来(用*代表正面,O代表反面)。 14.有黑白棋子各有N个(分别用*和O代替),按下图方式排列 ***...***OOO...OOO N个黑棋 N个白棋 允许将相邻两个棋子互换位置,最后使队形成黑白交替排列,试编程实现该操作。 15.已知6个城市,用c[i,j]表示从i城市到城市j是否有单向的直达汽车 (1=<i〈=6,1〈=j〈=6),c[i,j]=1表示城市i到城市j有单向直达汽 车;否则c[i,j]=0.试编制程序,对于给出的城市代号i,打印出从该城市出 发乘车(包括转车)可以到达的所有城市。 16.设有8枚硬币a,b,c,d,e,f,g,h,其中有一枚硬币是伪造的。 真伪硬币的区别仅是重量不同,可能重,可能轻。 今要求以天平为工具,用最少的 比较次数挑出伪造硬币,并鉴定它是重还是轻。 17.编写一个程序,当输入不超过60个字符组成的英文文字时,计算机将这个句子 中的字母按英文字典字母顺序重新排列,排列后的单词的长度要与原始句子中的长度 相同。 例如: 输入: THEPRICEOFBREADIS¥125PERPOUND 输出: ABCDDEEEEFHIINOOP¥125PPRRRSTU 并且要求只对A到Z的字母重新排列,其它字符保持原来的状态。 18.在一线性七个格位置的图上有两种不同颜色的棋子A,B.排列如下图所示,中间 格的位置为空。 ┎─┰─┰─┰─┰─┰─┰─┒ ┃A┃A┃A┃┃B┃B┃B┃ ┖─┸─┸─┸─┸─┸─┸─┚ 要求将A,B的现行位置交换,形成下图中的排列: ┎─┰─┰─┰─┰─┰─┰─┒ ┃B┃B┃B┃┃A┃A┃A┃ ┖─┸─┸─┸─┸─┸─┸─┚ 移动棋子的条件: (1)每个格中只准放一个棋子。 (2)任意一个棋子均可移动一格放入空格内。 (3)一方的棋子均可跳过另一方的一个棋子进入空格。 (4)任何棋子不得跳跃两个或两个以上棋子(无论颜色同异) (5)任何一个颜色棋子只能向前跳,不准向后跳。 编程完成有关的移动,并且完成具有2N+1个格子的情形.其中两种颜色各有 N个棋子,且中间为空格. 19.(背包问题)有N件物品d1,......dN,每件物品重量为W1,...,WN (Wi>0),每件物品价值为V1,......VN(Vi>0)。 用这N件物品的某个子集 填空背包,使得所取物品的总重量<=TOTAL,并设法使得背包中物品的价值尽可 能高。 20.(N皇后)在国际象棋的棋盘上放置N个皇后,使其不能互相攻击,即任意 两个皇后不能处在棋盘的同一行,同一列,同一斜线上,试问共有多少种摆法? 21.请设计一个程序,由计算机把1.. ̄.8的八个自然数填入图中,使得横、 竖、对角任何两个相邻的小方格中的两个数是不连续的。 (下图右侧的4个图 为禁止的情形). ┌─┐ ┌─┐ ┌─┐ ││ │4│ │8│ ┌─┼─┼─┐ └─┼─┐ ┌─┼─┘ ││││ │5│ │7│ ├─┼─┼─┤ └─┘ └─┘ │││
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 经典 编程