2019/1/2810个整数的数据处理

题目描述
输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。写三个函数; ①输入10个数;②进行处理;③输出10个数。

输入
10个整数

输出
整理后的十个数,每个数后跟一个空格(注意最后一个数后也有空格)

样例输入
2 1 3 4 5 6 7 8 10 9
样例输出
1 2 3 4 5 6 7 8 9 10

#include <stdio.h>
int main()
{
    int a[10];
    void input_number(int *a);   
    void sort_number(int *a);   
    void output_number(int *a); 
    input_number(a);
   sort_number(a);
   output_number(a);
    
}

void input_number(int *a)
{
    int *m;
    for (m=a; m<a+10; scanf("%d", m++));
}

void sort_number(int *a)
{
    int m1,m2;  
    int t1,t2,i;
    for(i=0,t1=t2=*a,m1=m2=0;i<10;i++)
    {
        if(*(a+i)>t1)   
        {
            t1=*(a+i);m1=i;
        }
        if(*(a+i)<t2)  
        {
            t2=*(a+i);m2=i;
        }
    }
     *(a+m1)=*(a+9);*(a+9)=t1; 
     *(a+m2)=*a;*a=t2; 
}

 void output_number(int *a)
{
    int i;
    for(i=0;i<10; printf("%d ",*(a+(i++))));
}

posted @ 2019-01-28 10:59  Locker伍六七  阅读(36)  评论(0编辑  收藏  举报