思路:假定数组中第一个元素为max,利用for循环,逐个比较,并标记各个max元素的位置
#include<stdio.h>
int main() {
int arr[] = { 1,4,10,9,6 };
int max = arr[0];
//找出最大值
int mark = 0;
for (int i = 1; i < sizeof(arr) / sizeof(int); i++) {
if (arr[i] > max) {
max = arr[i];
mark = i;//标记max的数组位置
}
}
if (mark != 0) {
int temp = arr[0];
arr[0] = arr[mark];
arr[mark] = temp;
}
for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
printf("arr[%d]=%-4d", i,arr[i]);
}
}