0x19:找到数组中的最大值和最小值,输出出来并交换他们在数组中的位置
#include <stdio.h> void Swap(int *x,int *y){ int temp; temp= *x; *x=*y; *y=temp; } void showArray(int p[]){//显示原数组的值 int i; for(i=0;i<=9;i++){ printf("%d ",p[i]); } printf("\n"); } int Compare(int arr[]){ //比较大小的函数 int max=arr[0],min=arr[0],i=0,j=0,k=0,g=0; for(i=1;i<=9;i++) { if(max<arr[i]) { max=arr[i]; j=i;//保留最大值的下标 } } for(k=0;k<=9;k++){ if(min>arr[k]){ min=arr[k]; g=k;保留最小值的下标 } } printf("[+]max=%d,min=%d\n",max,min);//输出最大值和最小值 Swap(&arr[j],&arr[g]); } int main() { int i=0; int a[10]; for(i=0;i<=9;i++) { printf("输入数组的值\n"); scanf("%d",&a[i]); } printf("[+]origin Array:"); showArray(a); Compare(a); printf("[!]Array new is:"); showArray(a); }