系列文章《C语言经典100例》持续创作中,欢迎大家的关注和支持。
喜欢的同学记得点赞、转发、收藏哦~
后续C语言经典100例将会以pdf和代码的形式发放到公众号
欢迎关注:计算广告生态 即时查收
1 题目
函数:max()、swap()
功能:使用指针交换两个数组中的最大值
描述:
输入两个五个元素的数组,使用指针将两个数组中的最大值进行交换
并输出最大值交换之后的两个数组
2 思路
以下都使用指针来进行实现
- 找到最大值 创建 int *max(int *a) 函数,指针指向找出的最大值
- 交换最大值 创建 void swap(int *p1, int *p2) 找到的两个最大值进行交换,即进行指针指向的内容进行交换
3 代码
#include #include #define N 5/**函数:max()、swap()功能:使用指针交换两个数组中的最大值描述:输入两个五个元素的数组,使用指针将两个数组中的最大值进行交换并输出最大值交换之后的两个数组**/int * max(int *a) { int * p = a; for (int i = 1; i *p) p = a+i; } return p;}void swap(int *p1, int *p2) { *p1 = *p1 ^ *p2; *p2 = *p1 ^ *p2; *p1 = *p1 ^ *p2;}int main(int argc, char const *argv[]) { int a[N], b[N]; int * max_a, * max_b; // 1. 初始化两个数组 printf("输入数组 a 的5个数字:"); for (int i = 0; i
示例结果:
$ gcc ex026.c -o demoyaojianguodeMacBook-Pro:C语言100题集合代码 yaojianguo$ ./demo输入数组 a 的5个数字:13579输入数组 b 的5个数字:246810数组 a 的5个数字为: 1 3 5 7 9数组 b 的5个数字为: 2 4 6 8 10数组 a 的最大值:9数组 b 的最大值:10交换最大值之后的数组 a 的5个数字为:1 3 5 7 10交换最大值之后的数组 b 的5个数字为:2 4 6 8 9
--END--
喜欢本文的同学记得点赞、转发、收藏~
更多内容,欢迎大家关注我们的公众号:计算广告生态
后续C语言经典100例将会以pdf和代码的形式发放到公众号
同时也带来更多系列文章以及干货❤️!