第7章 实验2

  • 格式:doc
  • 大小:70.00 KB
  • 文档页数:14

浙江大学城市学院实验报告

实验项目名称 实验7 数组程序设计

实验成绩 指导老师(签名) 日期

7.2找出矩阵中最大值所在的位置

一. 实验目的和要求

1.熟练掌握二维数组的程序设计。

2.熟练掌握二维矩阵的编程方法。

3.熟练掌握C程序的调试方法。

二. 实验内容、原理及实验结果与分析

说明:实验指导教师可根据教学内容指定题目。

1. 调试示例,参考实验手册。

2. 编程题1 矩阵运算。

(70022)输入一个正整数 repeat (0

读入 1 个正整数 n(1≤n≤6), 再读入 n 阶方阵 a , 计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。副对角线为从矩阵的右上角至左下角的连线。

输入输出示例:括号内为说明

输入:

1 (repeat=1)

4 (n=4)

2 3 4 1

5 6 1 1

7 1 8 1

1 1 1 1

sum = 35 (2+3+4+5+6+7+8=35)

【源程序】

【实验结果与分析】

3. 编程题2 九九乘法表。

(70023) 输入一个正整数 repeat (0

输入一个正整数 n(0

提示:将乘数、被乘数和乘积放入一个二维数组中,再输出该数组。

输入输出示例:括号内为说明

输入:

1 (repeat=1)

3 (n=3)

输出:

* 1 2 3

1 1 2 2 4

3 3 6 9

【源程序】

【实验结果与分析】

4. 编程题3 判断上三角矩阵。

(70024)输入一个正整数 repeat (0

输入1 个正整数 n (1≤n≤6)和 n 阶方阵 a 中的元素,如果 a 是上三角矩阵,

输出"YES", 否则, 输出"NO"。上三角矩阵指主对角线以下的元素都为0的矩阵,

主对角线为从矩阵的左上角至右下角的连线。

输入输出示例:括号内为说明

输入:

2 (repeat=2)

3 (n=3)

1 2 3

0 4 5

0 0 6

2 (n=2)

1 0

-8 2

输出:

YES

NO

【源程序】

【实验结果与分析】

5. 编程题4 算算看,这是第几天?

(70025)输入一个正整数 repeat (0

输入日期(年、月、日),输出它是该年的第几天。

要求定义与调用函数 day_of_year(year, month, day),计算并返回year(年)、month(月)和day(日)对应的是该年的第几天,函数形参year、month和day的类型是int,函数类型也是int。

输入输出示例:括号内为说明

输入:

2 (repeat=2)

1981 3 1 (1981年3月1日)

2000 3 1 (2000年3月1日)

输出:

days of year: 60 (1981年3月1日是该年的第60天)

days of year: 61 (2000年3月1日是该年的第61天)

【源程序】

【实验结果与分析】

三. 讨论、心得

将源程序、运行结果和分析以及实验中遇到的问题和解决问题的方法,写在实验报告上。

浙江大学城市学院实验报告

实验项目名称 实验7 数组程序设计

实验成绩 指导老师(签名) 日期

7.3 进制转换

一. 实验目的和要求

1.熟练掌握字符数组的程序设计。

2.熟练掌握进制度转换的编程方法。

3.熟练掌握C程序的调试方法。

二. 实验内容、原理及实验结果与分析

说明:实验指导教师可根据教学内容指定题目。

1. 调试示例,参考实验手册。

2. 编程题1 查找字符。

(70032)输入一个正整数repeat (0

输入一个字符,再输入一个以回车结束的字符串(少于80个字符),在字符串中查找该字符,如果找到,输出该字符在字符串中所对应的最大下标 (下标从0开始);否则输出"Not Found"。

输入输出示例:括号内为说明

输入:

2 (repeat=2)

m (字符'm')

programming (字符串"programming")

a (字符'a')

1234 (字符串"1234")

输出:

index = 7 ('m'在"programming"中对应的最大下标是7)

Not Found ("1234"中没有'a')

【源程序】

【实验结果与分析】

3. 编程题2 统计大写辅音字母。

(70033) 输入一个正整数 repeat (0

输入一个以回车结束的字符串(少于80个字符),统计并输出其中大写辅音字母的个数。大写辅音字母:除'A', 'E', 'I', 'O', 'U'以外的大写字母。

输入输出示例:括号内为说明

输入:

2 (repeat=2)

HELLO

group

输出:

count = 3 ("HELLO"中有3个大写辅音字母)

count = 0 ("group"中没有大写辅音字母)

【源程序】

【实验结果与分析】

4. 编程题3 字符串替换 。

(70034)输入一个正整数 repeat (0

输入一个以回车结束的字符串(少于80个字符),将其中的大写字母用下面列出的对应大写字母替换,其余字符不变,输出替换后的字符串。

原字母 对应字母

A Z

B Y

C X

D W

……

X C

Y B

Z A

输入输出示例:括号内为说明

输入:

2 (repeat=2)

A flag of USA

1+2=3

输出:

After replaced: Z flag of FHZ

After replaced: 1+2=3

【源程序】

【实验结果与分析】

5. 编程题4 将十六进制字符串转换为十进制整数。

(70035)输入一个正整数 repeat (0

输入一个以回车结束的字符串(少于80个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。

输入输出示例:括号内为说明

输入:

2 (repeat=2)

10

+A

输出:

Dec = 16

Dec = 10

【源程序】