weixin_71183505 2022-05-26 09:50 采纳率: 80%
浏览 29
已结题

请问这个该怎么写啊?

编写函数 function2,用于将某一整型数组中n(0<n<100)个数按先奇数后偶数的方式从 小到大顺序存放

  • 写回答

2条回答 默认 最新

  • qzjhjxj 2022-05-26 17:04
    关注

    供参考:

    #include<stdio.h>
    #define  Max  100
    void function2(int a[], int n)
    {
        int i, j, tmp;
        for (i = 0; i < n - 1; i++)//冒泡排序
        {
            for (j = 0; j < n - 1 - i; j++)
    
            {
                if ((a[j] % 2 < a[j + 1] % 2) || //当前一个元素为偶数,后一个元素为奇数时     
                    ((a[j] % 2 == a[j + 1] % 2) && (a[j] > a[j + 1])))
                          // 前后两个元素同为奇数或偶数,并且前一个元素比后一个元素大时
                {
                    tmp = a[j];
                    a[j] = a[j + 1];
                    a[j + 1] = tmp;
    
                }
            }
        }
    }
    int main()
    {
        int a[] = { 10 ,2, 7, 9, 11, 5 ,4 ,3 ,6 ,8 ,20 }, n = 0, i;
        n = sizeof(a) / sizeof(a[0]);
        function2(a, n);
        for (i = 0; i < n; i++)//遍历数组
            printf("%d ", a[i]);
        printf("\n");
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月6日
  • 已采纳回答 5月29日
  • 创建了问题 5月26日

悬赏问题

  • ¥15 人在外地出差,速帮一点点
  • ¥15 如何使用canvas在图片上进行如下的标注,以下代码不起作用,如何修改
  • ¥15 Windows 系统cmd后提示“加载用户设置时遇到错误”
  • ¥50 vue router 动态路由问题
  • ¥15 关于#.net#的问题:End Function
  • ¥15 无法import pycausal
  • ¥15 VS2022创建MVC framework提示:预安装的程序包具有对缺少的注册表值的引用
  • ¥15 weditor无法连接模拟器Local server not started, start with?
  • ¥20 6-3 String类定义
  • ¥15 嵌入式--定时器使用