提取并排序数组中的奇数

c语言:数列排序 题目:蒜头君给了一个长度为N(不大于500)的正整数序列(正整数的值不超过N),请将其中的所有奇数取出,并按升序输出。 输入格式 共2行: 第1行为N; 第2行为N个正整数,其间用空格间隔。 输出格式 增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。 【错误示例】 只是输出了500内的所有奇数,不符合题目的数列中提取奇数并排序 # include <stdio.h> int main(){ int i; for(i=1;i&lt... 阅读详情

题目:提取并排序数组中的奇数

题目描述:

给定一个整数 n 和一个包含 n 个整数的数组,编写一个程序提取数组中的所有奇数,并按升序排序后输出。

输入格式:
  • 第一行包含一个整数 n (1 ≤ n ≤ 100,000),表示数组的元素个数。
  • 第二行包含 n 个整数,表示数组中的元素。每个整数的绝对值不超过 109109。
输出格式:
  • 输出所有奇数的升序排列,奇数之间用逗号分隔。如果数组中没有奇数,则不输出任何内容。
示例:

输入

5 3 1 4 2 5

输出

1,3,5

说明:

在上述示例中,数组中的奇数为 [3, 1, 5],经过排序后输出为 1, 3, 5。

代码如下:

#include<bits/stdc++.h>
using namespace std;
int a[100000],n,cnt,x;
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>x;
		if(x%2!=0) a[cnt++]=x;
	}
	sort(a,a+cnt);
	cout<<a[0];
	for(int i=1;i<cnt;i++){
		cout<<','<<a[i];
	} 
    return 0;
}

这段代码的主要功能是从输入的整数中提取出所有的奇数,进行排序,并以逗号分隔的形式输出。以下是代码的逐行解读:

#include<bits/stdc++.h> using namespace std;

  • 引入了 C++ 标准库的头文件 bits/stdc++.h,它包含了大多数常用的 C++ 库。

int a[100000], n, cnt, x;

  • 定义了一个数组 a,大小为 100,000,用于存储奇数。
  • n 表示输入的整数个数。
  • cnt 用于记录奇数的数量。
  • x 用于存储当前输入的整数。

int main() { cin >> n;

  • main 函数的开始,读取用户输入的整数个数 n。

for (int i = 1; i <= n; i++) { cin >> x;

  • 循环从 1 到 n,逐个读取整数 x。

if (x % 2 != 0) a[cnt++] = x;

  • 判断 x 是否为奇数(即 x % 2 != 0),如果是,则将其存入数组 a 中,并将 cnt 递增。

sort(a, a + cnt);

  • 对存储的奇数进行升序排序。

cout << a[0];

  • 输出数组中第一个奇数(最小的奇数)。

for (int i = 1; i < cnt; i++) { cout << ',' << a[i]; }

  • 循环输出剩下的奇数,每个奇数前面加一个逗号,形成逗号分隔的格式。

return 0;

  • 返回 0,表示程序正常结束。

总结

这段代码的主要功能是:

  1. 从输入中读取一系列整数。
  2. 提取出其中的奇数,并将它们存入数组。
  3. 对奇数进行排序。
  4. 输出排序后的奇数,格式为用逗号分隔的字符串。

注意:

  • 输入的整数个数从 1 开始,而数组索引从 0 开始,因此在读取和处理时要特别注意。

信捷XDH PLC多轴运动控制实战:Ethercat总线下的C语言封装技巧 本文深入探讨了在信捷XDH PLC平台上,如何利用C语言对EtherCAT总线多轴运动控制进行高效封装。通过设计全局数据池、模块化状态机及用户友好接口,将底层复杂的运动控制函数库抽象为清晰、可复用的高级模块,显著提升程序稳定性与可维护性,并分享了关键的实战避坑经验。 阅读详情

相关推荐

利用pyGAM实现广义可加模型(GAM)的实战指南

本文提供了利用pyGAM库实现广义可加模型(GAM)的完整实战指南。通过乳腺癌和房价预测案例,详细讲解了从环境配置、模型构建、核心可视化(部分依赖图)到参数调优(n_splines, lam)的每一步。重点展示了GAM如何平衡模型准确性与可解释性,帮助数据科学家在Python中高效应用这一强大工具。

weixin_29053383的博客 326

3-7 奇偶分家

给定N个正整数,求奇数和偶数分别有多少个?

tjnu2330090039的博客 168

交叉编译Qt6.5.3(RK3568开发板)

注意,如果使用其它版本的交叉编译器的话,请确保你的交叉编译器能够支持 C++17标准。为确保后续交叉编译没问题,需要确保开发板使用的GLIBC版本不小于2.34版本。到 linaro 网站上下载交叉编译工具,我下载的是 gcc-linaro-11.3.1-2022.06-x86_64_aarch64-linux-gnu.tar.xz。安装 CMake ,最低要求3.16版本,如果要静态编译,需要3.21及以上版本。我使用的3.27版本。:指定为最后交叉编译后的Qt6.5.3库的安装目录。

m0_46309425的博客 5100

输入n个数(n<=100),将其中的奇数从小到大排序,然后输出

#include<stdio.h> #include<stdlib.h> int main() { int n,i,j,temp;; scanf("%d",&n); int *p1=(int *)malloc(sizeof(int)*n);//没说是多少就动态分布一个大小 for(i=0;i<n;i++)//输入数据 { scanf("%d",p1+i); } for(i=0;i<n-1;i++)//对输入的数冒泡排序 { for(j=0;

weixin_50506369的博客 2085

FineReport SQL查询分页

打开模板>模板web属性>分页预览设置,选择为该模板单独设置,将默认的工具栏按钮全部清除掉,然后依次添加两个自定义按钮,一个邮件按钮,两个自定义按钮,一个Word格式,一个PDF按钮。如下所示:注:使用具体格式按钮,如邮件、Word格式、PDF按钮是为了JS直接使用控件名称获取空间方便修改其内容;

lep的博客 2427

电路仿真软件PSIM简介

PSIM的基本使用操作...

qq_55203246的博客 7174

提取奇数位

/ 将字符转换为数字。// 假设整数的位数不超过20位。printf("提取的奇数位数字:%s\n", t);// 如果是奇数,添加到新数字中。// 初始化一个字符数组用于存储奇数位上的数字。// 在新数字的末尾添加字符串结束符。// 逐位检查每个字符是否为奇数。// 调用函数提取奇数位数字。// 打印提取的奇数位数字。// 将整数转换为字符串。

2303_80475208的博客 1145

人工智能---什么是Transformer?

Transformer是一种强大的神经网络架构,最初由Google的研究人员在论文《Attention is All You Need》中提出,用于自然语言处理任务,特别是在机器翻译方面取得了巨大成功。Transformer的核心思想是完全基于自注意力机制(self-attention mechanism)来实现序列到序列(sequence-to-sequence)的学习。它在自然语言处理(NLP)和其他序列到序列任务中表现出色,逐渐成为该领域的主流模型。近些年也逐渐在自动驾驶领域有所应用。

智能汽车人的博客 3954

将一个数组里面的所有的奇数排在前面,偶数排在后面(两种方法)——C语言

将一个数组里面的所有的奇数排在前面,偶数排在后面(两种方法)——C语言

cx330的博客 2354

如何为 Claude Code 配置代理与网络环境

那么大概率不是软件问题,而是。因为 Claude Code 是运行在终端里的,不是浏览器。

sg_knight的专栏 3478

Windows 11 安装、使用 Git:下载、安装、概念、命令、分支模型

本文详细介绍了在 Windows 11 系统上安装与使用 Git 的完整流程,涵盖从官方或国内镜像下载安装包、关键安装选项配置,到 Git 核心概念(如工作区、暂存区、分支、远程仓库等)的通俗解释。同时梳理了常用命令与五种主流 Git 分支模型(如 Git Flow、GitHub Flow 等),帮助开发者根据项目规模选择合适的工作流,是面向初学者与进阶用户的实用指南。

寒水馨 · 轻量级技术文档 · hanshuixin.org 2385

1200: 【一维数组】排序后的奇数项

有20个正整数,将它们从小到大排序,输出其中的奇数项。一行,排序后奇数项的值。行末不要出现多余空格。一行,有20个正整数,整数之间用空格隔开。

呱呱呱~的博客 295

YOLOv11损失函数进阶:融合SmoothL1与FocalLoss,让检测精度再涨10%的实战教程

在YOLOv11的这里的beta参数控制“L1与L2的过渡阈值”,默认设为1.0即可兼容多数场景。同样在# 计算动态alpha(基于类别样本数,需提前统计self.class_counts)# 交叉熵基础# FocalLoss权重else:使用前需统计数据集的(每个类别的样本数),并传入的alpha参数。损失函数是YOLOv11精度的“灵魂”——SmoothL1让边界框回归“稳、准、狠”,改进FocalLoss让类别分类“雨露均沾”。从代码改造到实战落地,本教程已为你搭建了一条精度跃升的路径。

m0_64661770的博客 212

数组拆分I

给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从 1 到 n 的 min(ai, bi) 总和最大。

Tinyfacture的博客 142

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

C++作业7

/* * 文件名称:Ex1-1.cpp * 作    者:零梅 * 完成日期:2016 年 6月 5 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: * 输入描述:无 * 问题描述:定义一个有10个的数组a,将数组a中的所有素数放在数组b,再对数组b排序。 * 程序输出:略 * 问题分析:略 * 算法设计:略 */  一、问题和代码 #in

lm4dashuaibi的博客 286

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

二分&异或&链表,栈,队列,Master公式

二分&异或&链表,栈,队列,Master公式

深入探索技术领域,持续学习成长,追求实践与进步,共同构建技术未来 286

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

对数器和异或运算

对数器和异或运算 文章目录对数器和异或运算对数器什么是对数器?代码异或运算性质练习代码 对数器 什么是对数器? 你想要测的方法A 实现复杂度不好但是容易实现的方法B 实现一个随机样本产生器 把方法A和方法B跑相同的随机样本,看看得到的结果是否一样 如果有一个随机样本使得比对结果不一致,打印样本进行人工干预,改对方法A和方法B 当样本数量很多时比对测试依然正确,可以确定方法A已经正确。 代码 package com.cz.Sort; import java.util.Arrays; /** * 从

Java厂长 948

提取并排序数组中的偶数

从输入中读取一系列整数。提取出其中的偶数,并将它们存入数组。对奇数进行排序。输出排序后的奇数,格式为用逗号分隔的字符串。输入的整数个数从 1 开始,而数组索引从 0 开始,因此在读取和处理时要特别注意。

ljb_java888的博客 494

将字符串下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出

《程序设计基础实训指导教程-c语言》 ISBN 978-7-03-032846-5 p92 5.1.2 上级实训内容 【实训内容7】设有一个字符串为baawrskjghzlicda,将字符串下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,形成一个新的字符串,新的字符串应为aachjlsw #include<stdio.h> #include<stri...

小飞的博客 1758

输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。

输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。 我们首先会想到常规方法:创建一个临时数组,遍历所给数组中的所有元素,将偶数提取出来,再将临时数组中的偶数元素加入到原数组后边,但该方法存在致命缺点,临时数组的数组大小有上限,此时对于数组知识掌握不熟练的人可能会想到定义一个变量,用该变量存储数组长度,使其灵活可变,可是C语言...

jiangkun0331的博客 2598

算法题:提取数组中的数字并去重升序排序(python学习)

var arrList = [1, 9, 0, 2, 1, 6, 8, 11, 0 , 5, 18, 1, 26, 11, 8, 2, 3, 5, 18,1,2,3,4,5,6,7,3]将每个重复的奇数存到 oddRepeat 中、将每个重复的偶数存到 evenRepeat 中对整个数组进行去重排序)并将数组存到 newlist 中 arrList = [1, 9, 0, 2, 1, 6, 8, 11, 0 , 5, 18, 1, 26, 11, 8, 2, 3, 5, 18,1,2,3,4,5,6,7,3

zackor_的博客 615

java中找出奇数和偶数并按照从小到大的顺序输出

/** * 需求根据输入的一行数字,找出奇数和偶数并按照从小到大的顺序输出。 */ public static void main(String[] args) { int[] array1={1,3,2,90,7,8,4,6,65};//把一行数字放入到数组里面; int[] jishu;//定义一个奇数数组; int[] oushu;//定义

3187

按降序显示奇数python_程序在Python中分别以升序和降序对所有偶数和奇数进行排序...

假设我们有一个称为nums的数字列表,我们必须通过遵循以下条件对数组进行排序偶数按升序排列奇数按降序排列偶数和奇数的相对位置不应更改。因此,如果输入类似于[9,14,12,91,-4,5],则输出将为[91,-4,12,9,9,14,5]为了解决这个问题,我们将遵循以下步骤-偶数:= nums数组中的偶数项列表赔率:= nums数组中的奇数项列表对列表进行排序偶数= 0,奇数= 0对于范围从0到n...

weixin_42425824的博客 2261

1.10编程基础之简单排序——02:奇数单增序列

1.10编程基础之简单排序——02:奇数单增序列

Michael-Shao的博客 860

1177:奇数单增序列

1177:奇数单增序列 【题目描述】 给定一个长度为N(不大于500)的正整数序列,请将其中的所有奇数取出,并按升序输出。

Song331的博客 4459

剑指offer 调整数组顺序是奇数位于偶数前面

1.题目 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 来源:剑指offer 链接:https://www.nowcoder.com/practice/beb5aa231adc45b2a5dcc5b62c93f593?tpId=13&tqId=11166&rp...

vector的博客 126
上一篇: 最大数位置
下一篇: 绝对值排序
ljb_c++888
博客等级 码龄3年 215粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值