利用函数和指针实现最小数和第一个数交换,最大数和最后一个数交换

来源:互联网 发布:网店美工对店铺的作用 编辑:程序博客网 时间:2024/05/17 03:29
/*  写三个函数,输入函数,输出函数,处理函数,找出输入数中最小的数,和第一个数交换,最大的数和最后一个数交换*/# include <stdio.h>void inFunc(int * a,int n);void outFunc(int * a,int n);void swap(int * p, int * q);void workFunc(int * a, int n);int main(void){int a[10];int *p = a;inFunc(p, 9);workFunc(p, 9);outFunc(p, 9);//printf("min = %d\n", t);//printf("max = %d\n", m);return 0;}//输入函数void inFunc(int * a,int n){int i;for (i = 0; i <= n; i++){scanf("%d", &a[i]);}}//输出函数void outFunc(int * a,int n){int i;for (i = 0; i <= n; i++)printf("%d ", a[i]);printf("\n");}//处理函数void workFunc(int * a, int n){int i;int j;int k;int t = *a;int m = *a;for (i = 0; i <= n; i++){if (t >= *(a+i)){t = *(a+i);j = i;}if (m <= *(a+i)){m = *(a+i);k = i;}}swap(a, a+j);swap(a+9, a+k);}//交换函数void swap(int * p, int * q){int temp;temp = *p;*p = *q;*q = temp;}

原创粉丝点击