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

//C程序设计第四版(谭浩强)
//章节:第八章 善于利用指针 
//题号:8.3 
//题目:输入10个整数,将其中最小的数与第一个数对换,把最小的数与第一个数对换,把最大的数与最后一个数对换。
//写三个函数:1输入十个数;2进行处理;3输出十个数 
#include <stdio.h>
void input(int *a)
{
	int i;
	printf("enter 10 integers:\n");
	for(i=0;i<10;i++)
		scanf("%d",(a+i));
}
void deal(int *a)
{
	int min=*a,max=*a,temp,i;
	for(i=0;i<10;i++)
	{
		if(min>*(a+i))	
			min=*(a+i);
		if(max<*(a+i))
			max=*(a+i);
	}
	if(min!=*a)
	{
		temp=min;
		min=*a;
		*a=temp;
	}
	if(max!=*(a+9))
	{
		temp=max;
		max=*(a+9);
		*(a+9)=temp;
	}
}
void output(int *a)
{
	int i;
	printf("after deal:\n");
	for(i=0;i<10;i++)
		printf("%d ",*(a+i));
}
int main()
{
	int a[10]={0};
	input(a);
	deal(a);
	output(a);
	return 0;
 } 

猜你喜欢

转载自blog.csdn.net/weixin_44589540/article/details/86629957