【C语言】选择排序

该博客介绍了一种使用C语言处理10个整数的排序问题,要求奇数在前,偶数在后。通过设置odd和even变量来分别存储奇数和偶数的下标,运用选择排序算法对数组进行排序,最终实现符合要求的升序排列并展示运行结果。
摘要由CSDN通过智能技术生成

题目:输入 10 个整数,将这 10 个整数按升序排列输出,并且奇数在前,偶数在后。比如, 如果输入的 10 个数是 1 2 3 4 5 6 7 8 9 10,则输出 1 3 5 7 9 2 4 6 8 10。

思路:将输入的 10 个整数,按其就行分别放在数组 a 的左部和右部。其具体方法就是 设置两个整型变量 odd 和 even,分别表示奇数和偶数存放在数组 a 中元素的下标,odd初始 值为 0,每存放一个奇数 odd 就加 1,even初始值为 9,每存放一个偶数 even 就减 1,然后通过选择排序的方法分别对数组 a 左部的奇数和右部的偶数进行排序,最后依次进行排序结果的输出。

 

代码:

#include<stdio.h>
int main()
{
	#define N 10
	int i,j,t,odd=0,even=N-1,a[N],b[N];
	printf("请输入%d个数据:",N);
	for(i=0;i<N;i++)
	{
		scanf("%d",&a[i]);
		if(a[i]%2==1) {b[odd]=a[i];odd++;}
		if(a[i]%2==0) {b[even]=a[i];even--;}
	}
	//odd--奇数个数 
	for(i=0;i<odd;i++)
		for(j=i+1;j<odd;j
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值