76道比较难的C语言题目
【1】给定等式 A B C D E 其中每个字母代表一个数字,且不同数字对应不 D F G 同字母。编程求出这些数字并且打出这个数字的 + D F G 算术计算竖式。
───────
X Y Z D E
【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阶拉丁方阵,并统计个数。
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
【5】输入一个十进数,将其转换成 N 进制数(0<N<=16)。
【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│ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤ ├─┼─┼─┼─┼─┤