輸入十個整數,將最小的與第一個對換,最大的與最後一個對換

分析:

十個數存放在數組裏,進行逐個比較找到最小的與最大的。



#include <stdio.h>

void main()
{
void input(int *p, int n);
void deal(int *p, int n);
void output(int *p, int n);
int a[10],*p,n=10;

p = a;
input(p,n);
deal(p,n);
output(p,n);
}

void input(int *p, int n)   //輸入十個整數存到數組中
{
for (n=0; n<10; n++)
scanf("%d",p+n);
}

void output(int *p, int n)   //打印出十個整數
{  
for (n=0; n<10; n++)
printf("%d ",*(p+n));
}

void deal(int *p, int n)   //實現交換
{
int temp,*min,*max,*b;

  b=p;
min=b;
for (n=1; n<10; n++)
{
if (*min > *(b+n))
min=b+n;

}
temp=*p;
*p=*min;
*min=temp;
b=p;
max=b;
for (n=1; n<10; n++)
{
if (*max<*(b+n))
max=b+n;
}
temp=*(p+9);
*(p+9)=*max;
*max=temp;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章