最大数与最小数调换位置

来源:互联网 发布:神经网络算法 编辑:程序博客网 时间:2024/05/18 03:31
#include <stdio.h>//-----------------------数组(指针实现)实现---------------------------// 交换最大、最小值位置void swap_sm(int *src, int len){    int max = src[0];int min = src[0];// 初始化最大、最小值暂时为第一个int maxindex = 0;int minindex = 0;          for (int i = 1; i < len; ++i)    {        if (max < src[i])  // 元素如果比最大数大的,则重置最大值,及其索引        {            max = src[i];            maxindex = i;        }        else if (min > src[i])// 元素如果比最小数小的,则重置最小值,及其索引        {            min = src[i];            minindex = i;        }    }    if (maxindex == minindex) // 如果所有值一样,不用交换        return;    int tem = src[maxindex]; // 交换最大、最小值    src[maxindex] = src[minindex];    src[minindex] = tem;}int main(){    int a[10];    printf("intput 10 number : "); // 输入10个整数    for (int i = 0; i < 10; i++)        scanf("%d", &a[i]);    swap_sm(a, 10);    for (int i = 0; i < 10; i++) // 输出交换结果        printf("%d ", a[i]);    return 0;}

0 0
原创粉丝点击