c语言最值交换

c语言最值交换

定义一个一维整形数组num[20],输入整数n(n<=20)和一个整形数列,编写函数,查出数列中的最小值和最大值,并把他们交换位置,主函数完成输入和输出,主函数输出处理后的数列,各元素之间空一个空格。指针进行地址传递,子函数实现查找最值和最值位置交换。
输入说明
输入整数n和一个整形数列(n个数)
输出说明
格式输出:输出处理后数列
输入样例
5
2 3 1 5 8
输出样例
2 3 8 5 1
提示
使用指针作为形参,实现地址传递。仅对最值进行交换。输出数据之间空一格。

#include<stdio.h>
int main()
{
	int num[20]={0};
	int n,max,min,i,k,j,temp;
	scanf("%d",&n);
	for(i=0;i<n;i++){
		scanf("%d",&num[i]);
	}
	max=num[0];
	min=num[0];
	for(i=0;i<n;i++){
		if(num[i]>max){
			max=num[i];
			k=i;
		}
		if(num[i]<min){
			min=num[i];
			j=i;
		}
	}
	temp=num[k];
	num[k]=num[j];
	num[j]=temp;
	for(i=0;i<n;i++){
		printf("%d ",num[i]);
	}
	return 0;
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值