实验7 指针及其应用
本实验共 4 个子实验题目。每题含:题目、输入格式、输出格式、样例、6 组测试数据(输入/输出)以及 C 语言参考代码。
实验内容1 指针交换两变量
一、题目
编写 swap 函数,用指针参数交换两个变量的值(体会“传地址才能修改实参”)。 输入两个整数 a、b,输出交换后的 a、b。
二、输入格式
输入一行两个整数 a、b,用空格分隔。
三、输出格式
输出一行两个整数,为交换后的值,用空格分隔。
四、样例
输入:
3 5
输出:
5 3
六、测试数据(6 组,输入 / 输出)
第 1 组
- 输入:
3 5
- 输出:
5 3
第 2 组
- 输入:
10 1
- 输出:
1 10
第 3 组
- 输入:
-2 8
- 输出:
8 -2
第 4 组
- 输入:
100 200
- 输出:
200 100
第 5 组
- 输入:
0 0
- 输出:
0 0
第 6 组
- 输入:
7 7
- 输出:
7 7
实验内容2 指针带回最值
一、题目
编写函数 maxMin,用指针参数同时带回数组的最大值与最小值。 输入 n 个整数,输出最大值与最小值(用空格分隔)。
二、输入格式
第一行一个整数 n(1 ≤ n ≤ 100);第二行 n 个整数,用空格分隔。
三、输出格式
输出一行两个整数:最大值 最小值,用空格分隔。
四、样例
输入:
5
3 9 1 7 4
输出:
9 1
六、测试数据(6 组,输入 / 输出)
第 1 组
- 输入:
5
3 9 1 7 4
- 输出:
9 1
第 2 组
- 输入:
1
88
- 输出:
88 88
第 3 组
- 输入:
4
-5 -1 -9 -3
- 输出:
-1 -9
第 4 组
- 输入:
6
10 10 10 10 10 10
- 输出:
10 10
第 5 组
- 输入:
3
0 0 0
- 输出:
0 0
第 6 组
- 输入:
7
2 4 6 8 1 3 5
- 输出:
8 1
实验内容3 指针求字符串长度
一、题目
用指针方式遍历字符串,自编实现 strlen 的功能。 输入一个不含空格的字符串,输出它的长度。
二、输入格式
输入一行一个不含空格的字符串(长度不超过 200)。
三、输出格式
输出一行一个整数,为字符串长度。
四、样例
输入:
Hello
输出:
5
六、测试数据(6 组,输入 / 输出)
第 1 组
- 输入:
Hello
- 输出:
5
第 2 组
- 输入:
abc123
- 输出:
6
第 3 组
- 输入:
A
- 输出:
1
第 4 组
- 输入:
programming
- 输出:
11
第 5 组
- 输入:
x
- 输出:
1
第 6 组
- 输入:
Cplusplus
- 输出:
9
实验内容4 指针逆序字符串
一、题目
用指针方式遍历并逆序输出一个字符串(对应“野指针改错”练习,改为可验证结果的计算题)。 输入一个不含空格的字符串,输出它的逆序形式。
二、输入格式
输入一行一个不含空格的字符串(长度不超过 200)。
三、输出格式
输出一行:逆序后的字符串。
四、样例
输入:
abcd
输出:
dcba
六、测试数据(6 组,输入 / 输出)
第 1 组
- 输入:
abcd
- 输出:
dcba
第 2 组
- 输入:
Hello
- 输出:
olleH
第 3 组
- 输入:
12345
- 输出:
54321
第 4 组
- 输入:
X
- 输出:
X
第 5 组
- 输入:
reverse
- 输出:
esrever
第 6 组
- 输入:
pointers
- 输出:
sretniop