第七章 数组 下载本文

格式输出统计结果(“*”表示实际分布人数。)

0 -- 39 * 40 --49 ** 50 --59 ***** ??

90 --100 ****

【7.98】输入二维数组a[3][5],打印其中最小值和最大值及其对应的行列位置。 【7.99】输入5×5的数组,编写程序实现:

(1) 求出对角线上各元素

的和;

(2) 求出对角线上行、列下

标均为偶数的各元素的积。

(3) 找出对角线上其值最大

的元素和它在数组中的位置。

【7.100】找出一个二维数组中的鞍点,即该位置上的元素是该行一的最大值,是该列上的最小值。二维数组也可能没有鞍点。

【7.101】简单的密码加密程序。其加密过程是先定义一张字母加密对照表。

输入 输出 输入 输出 a d i a b w k b c k ; c d ; w e e i

将需要加密的一行文字输入加密程序,程序根据加密表中的对应关系,可以

很简单地将输入的文字加密输出,对于表中未出现的字符则不加密。 【7.102】*使用二维数组输入:”BASIC”,”ADA”,”Pascal”,”C”, ”Fortran”,将它们按从小到大的顺序排列后输出。

【7.103】已知某运动会上女子百米运动员决赛成绩。要求编写程序,按成绩排序并按名次输出排序结果,包括名次,运动员号,成绩三项内容。

【7.104】将矩阵A[2][3]的六个元素送入矩阵A[3][2]中,使其顺时针旋转90度。例:

1 2 3 4 1 a= b= 5 2 4 5 6 6 3

【7.105】从1981年开始到2000年止,我们将遇到多小个素数年号?

【7.106】输入10个人的序号或成绩,对成绩从小到大进行排序,输出排序后的序号和成绩。

【7.107】*从键盘上任意输入若干个整数(少于50),当遇到-1时停止,对输入数据从小到大排序后输出。 【7.108】*对数组A中的N(0

相同的整数要具有相同的编号。例如:

A(5,3,4,7,3,5,6) 则输出为: (3,1,2,5,1,3,4)

【7.109】*现将不超过2000的所有素数从小到大排成一行,第二行上的每个数都等于它“右肩”上的素数与“左肩”上的素数之差。请编程求出:第二行数中是否存在这样的若干个连续的整数,它们的和正好是1898?假如存在的话,又有几种这样的情况?

第一行:2 3 5 7 11 13 17 ?? 1979 1987 1993 第二行: 1 2 2 4 2 4 ?? 8 6

【7.110】*下面是5*5的螺旋方阵。请编程生成n*n(n<10)阶方阵。

1 2 3 4 5 16 17 18 19 6 15 24 25 20 7 14 23 22 21 8 13 12 11 10 9

【7.111】*下面是5*5的螺旋方阵。请编程生成n*n(n<10)阶方阵。

25 24 23 22 21 10 9 8 7 20 11 2 1 6 19 12 3 4 5 18 13 14 15 16 17