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

输入10个整数,将其中最小的数和第一个数对换,把最大的数与最后一个数对换。
使用指针,,谢谢了!

//输入保存10个数,找的最小数和最大数,交换
void main()
{
int i,a[10];
int *min, *max ,temp;
for(i=0;i<10;i++)
scanf("%d",a[i]);
min=&a[0];
max=&a[0];
for(i=0;i<10;i++)
{
if(a[i]>*max) max=&a[i];
if(a[i]<*min) min=&a[i];
}
temp=a[0];
a[0]=*min;
*min=temp;
temp=a[9];
a[9]=*max;
max=temp;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-03-10
供参考……
#include "stdio.h"//
void main(void){
int nDec[10]={7,1,9,2,6,0,3,5,4,8},i,max,min;
printf("Type 10 integers...\n");
for(i=0;i<10;scanf("%d",nDec+i++));
for(i=0;i<10;printf("%d ",nDec[i++]));
printf("\n");
for(max=min=0,i=1;i<10;i++){
if(nDec[max]<nDec[i]) max=i;
if(nDec[min]>nDec[i]) min=i;
}
i=nDec[0];
nDec[0]=nDec[min];
nDec[min]=i;
i=nDec[9];
nDec[9]=nDec[max];
nDec[max]=i;

for(i=0;i<10;printf("%d ",nDec[i++]));
printf("\n");
}本回答被提问者和网友采纳
第2个回答  2013-03-10
用指针将数对换的自定义函数为:
void swap(int * p, int * q) //p, q是需要对换的两个数的指针
{
int t;

t=*p;
*p=*q;

*q=t;

}
相似回答