【每日编程-434期】西北农林科技大学上机题(一)

教育   2025-02-01 10:02   江西  

西北农林科技大学上机题(一)


每日编程中遇到任何疑问、意见、建议请公众号留言或加入每日编程群聊739635399



将一个长度为10的数列最大值放第一个,最小值放最后一个。

输入样例:

1 2 3 4 5 9 0 7 8 6

输出样例:

9 2 3 4 5 1 6 7 8 0

解决方法:

(1)算法的基本思想:

通过“打擂法”找出最大的和最小的数字,同时记录下它们的位置,交换即可。

(2)代码实现:

#include <stdio.h>
int main()
{
    int a[10];
    int i = 0;
    while (i < 10)
    {
        scanf("%d", &a[i]);
        ++i;
    }
    int big = a[0];
    int small = a[0];
    int m = 0;
    int n = 0;
    for (i = 1; i < 10; ++i)
    {
        if (a[i] > big)
        {
            big = a[i];
            m = i;
        }
        if (a[i] < small)
        {
            small = a[i];
            n = i;
        }
    }
    int temp;
    temp = a[0];
    a[0] = a[m];
    a[m] = temp;
    temp = a[9];
    a[9] = a[n];
    a[n] = temp;
    for (i = 0; i < 10; ++i)
    {
        printf("%d ", a[i]);
    }
    return 0;
}

明日预告:西北农林科技大学上机题(二)
输入几个数,把素数找出,由大到小排序输出。

输入样例:

6 11 5 10 13 35 9

输出样例:

3 5 11 13


灰灰考研
最全的【计算机考研】【软件考研】考研信息! 最丰富的共享资料! 最大程度上帮助学渣狗登上研究生大门!
 最新文章