编程实现,从键盘输入十个整数,保存到数组中,然后从中找出最大的数输出,并将数组的所有元素按照顺序输出。这道题怎么做求大佬解析
1条回答 默认 最新
关注#include <stdio.h> void select_sort(int arr[],int n); int main() { int i = 0; int arr[10]; for(i=0;i<10;i++) { scanf("%d",&arr[i]); } select_sort(arr,10); printf("max = %d\n",arr[9]); //打印排好顺序的数组 for(i=0;i<10;i++) { printf("%d ",arr[i]); } printf("\n"); return 0; } void select_sort(int arr[],int n) { int i,j,k,tmp; for(i=0;i<n-1;i++) //n个元素需要排n-1趟 { k = i; //确定一个最小值的下标 for(j=i+1;j<n;j++) //最小的与后面的相比,故j从i+1开始;循环比较到最后一位,故j<n { if(arr[k]>arr[j]) //若当前的最小值大于后面的 { k = j; //重新确定最小值的下标 } } if(k != i) { tmp = arr[k]; arr[k] = arr[i]; arr[i] = tmp; } } }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报