C语言 输入10个数,将其中最小的数与第一个数对换,将最大的数与最后一个数对换

#include <stdio.h>
void input(int *number){
    
     //定义输入10个数的函数
	int i;
	printf("请输入10个整数:\n");
	for(i=0;i<10;i++)
		scanf("%d",&number[i]);
}
void max_min_value(int *number){
    
     //交换函数
	int *max,*min,*p,temp;
	max=min=number; //开始时使max和min都指向第1个数
	for(p=number+1;p<number+10;p++)
		if(*p<*min)
			min=p; //若p指向的数小于min指向的数,就使min指向p指向的小数
		temp=number[0];
		number[0]=*min;
		*min=temp;
		//将最小数与第1个数number[0]交换函数
	for(p=number+1;p<number+10;p++)
		if(*p>*max)
			max=p; //若p指向的数大于max指向的数,就使max指向p指向的大数
		temp=number[9];
		number[9]=*max;
		*max=temp;
		//将最大数与最后一个数交换
}
void output(int *number){
    
     //输出函数
	int *p;
	printf("调整后为:\n");
	for(p=number;p<number+10;p++)
		printf("%6d",*p);
}
int main(){
    
    
	int number[10];
	input(number); //调用输入10个数的函数
	max_min_value(number); //调用交换函数
	output(number); //调用输出函数
	return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Aiden51/article/details/127213985