C语言:输入10个整数,写一个函数将其中最小的数和第一个数对换,把最大的数和最后一个数对换。(指针)

news/2025/3/6 2:25:52/

分析:

    定义三个函数:input、sort、print。其中,input 函数用于输入十个整数,sort 函数用于对这十个整数进行排序,print 函数用于输出排序后的十个整数。这三个函数都是 void 类型,即不返回任何值。

   在主函数 main 中,定义一个数组 n,用于存储输入的十个整数。首先调用 input 函数,读取输入的十个整数,并将它们存储到数组 n 中。然后调用 sort 函数,对数组 n 中的十个整数进行排序。最后调用 print 函数,输出排序后的十个整数。

   input函数中使用指针变量来访问数组中的元素,例如 n 代表数组中第一个元素的值,(n+1) 代表数组中第二个元素的值,以此类推。程序使用 for 循环对数组中的每个元素进行读取。

   sort 函数中使用指针变量来进行最大值和最小值的查找和交换操作。首先定义指针变量 p、max、min,并初始化 max 和 min 的值为数组中第一个元素的地址。然后使用 for 循环遍历数组中的每个元素,查找最大值和最小值,并使用指针变量 max 和 min 分别保存它们的地址。最后执行交换操作,将最小值放到数组的第一个位置,将最大值放到数组的最后一个位置。

  print 函数中使用指针变量来访问数组中的元素,并使用 for 循环遍历数组中的每个元素,将它们输出到屏幕上。

代码:

#include <stdio.h>
int main()
{void input(int *);void sort(int *);void print(int *);int n[10];input(n);sort(n);print(n);return 0;
}
void input(int *n)
{int i;printf("Please enter 10 numbers: ");for (i=0;i<10;i++)scanf("%d",&n[i]);
}
void sort(int *n)
{int *p,*min, *max, t;max = min = n;for (p = n+1;p<n+10;p++)if (*p>*max)max = p;else if (*p<*min)min = p;t = n[0];n[0] = *min;*min = t;if(max == n)max = min;t = n[9];n[9] = *max;*max = t;
}
void print(int *n)
{int *p;printf("Sort by: ");for (p=n;p<n+10;p++)printf("%4d",*p);printf("\n");
}


http://www.ppmy.cn/news/1245192.html

相关文章

git报错:error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413

git报错&#xff1a;error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 如图&#xff1a; error: RPC failed; HTTP 413 curl 22 The requested URL returned error: 413 send-pack: unexpected disconnect while reading sideband packet fatal: th…

操作系统的中断与异常(408常考点)

为了进行核心态和用户态两种状态的切换&#xff0c;引入了中断机制。 中断是计算机系统中的一种事件&#xff0c;它会打断CPU当前正在执行的程序&#xff0c;转而执行另一个程序或者执行特定的处理程序。中断可以来自外部设备&#xff08;如键盘、鼠标、网络等&#xff09;、软…

音频——S/PDIF

文章目录 BMC 编码字帧(sub-frame)格式帧(frame)格式参考S/PDIF 是 SONY 和 Philips 公司共同规定的数字信号传输规范,其实就是在 AES/EBU 上进行改动的家用版本。IEC60958 的标准规范囊括了以上两个规范。spdif 采用了双相符号编码(BMC),是将时钟信号和数据信号混合在一起…

系列十九、Spring实例化bean的方式

一、概述 所谓实例化bean&#xff0c;大白话讲就是Spring如何把这一个个的普通的Java对象创建为Spring bean的。 二、方式 Spring中实例化bean常用的有以下四种&#xff0c;即&#xff1a; ① 构造器方式&#xff1b; ② 静态工厂方式&#xff1b; ③ 实例工厂方式&#xff1b;…

2023年汉字小达人市级比赛才知道消息?请查收最后三天的备考策略

这两天有家长联系六分家长&#xff0c;说语文老师刚刚通知他们孩子晋级了2023年第十届上海小学生汉字小达人比赛的市级活动&#xff08;实际比赛&#xff09;&#xff0c;该如何准备&#xff1f; 六分成长发现这些家长还有好几个呢。经过和家长了解&#xff0c;发现是孩子的语…

Git安装

简单粗暴&#xff0c;跟着步骤一步一步来 右键就会有了

MFC 读写注册表

在MFC (Microsoft Foundation Classes) 中读写注册表涉及到使用 CRegKey 类&#xff0c;这个类提供了一组方法来操作Windows注册表。以下是如何使用MFC来读取和写入注册表值的基本步骤&#xff1a; 写入注册表值 创建或打开注册表项: 使用 CRegKey::Create 或 CRegKey::Open 方…

matlab处理数据,两行相同共有多行如何将重复的去掉

有一个36001x10的数据&#xff0c;我如何删除奇数行变成18001x10 data rand(36001, 10); % 举例&#xff1a;使用随机数据 % 删除奇数行 data_even_rows data(2:2:end, :&#xff09;; % 如果你想保留大小为 18001x10 的矩阵&#xff0c;可以进行如下操作&#xff1a; da…