Skip to main content

实验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