输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个属兑换。写三个函数:1.输入10个数;2.进行处理;3.输出10个数

输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个属兑换。写三个函数:1.输入10个数;2.进行处理;3.输出10个数

#include 
#include 
void input(int *p, int len)
{
     
	for (int i = 0; i < len; i++)
	{
     
		scanf("%d", &p[i]);
	}
}
void exchange(int *p, int len)
{
     
	int max, min;
	int flag_min = 0;
	int flag_max = 0;
	max = p[0];
	min = p[0];
	int temp;
	for (int i = 0; i < len; i++)
	{
     
		if (max < p[i])
		{
     
			flag_max = i;
		}
		if (min > p[i])
		{
     
			flag_min = i;
		}
	}
	temp = p[flag_max];
	p[flag_max] = p[len-1];
	p[len-1] = temp;
	temp = p[flag_min];
	p[flag_min] = p[0];
	p[0] = temp;
}
void output(int *p, int len)
{
     
	for (int i = 0; i < len; i++)
	{
     
		printf("%d ", p[i]);
	}
}
int main()
{
     
	int a[10];
	input(a, 10);
	exchange(a, 10);
	output(a, 10);
	system("pause");
	return 0;
}

答案
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个属兑换。写三个函数:1.输入10个数;2.进行处理;3.输出10个数

你可能感兴趣的:(算法,c语言)