c语言编程 排序,C语言编程-9_3 排序
编写冒泡排序函数,函数原型:void bubblesort(int a[],int n);对n个整数升序排序。
编写选择排序函数,函数原型:void selectsort(int a[],int n);对n个整数降序排序。
编写main函数,输入10个整数,利用函数将其按升序和降序分别输出排序结果。(输入输出数据间用一个空格分隔)
测试样例:
如输入:
5 2 8 9 10 1 3 4 7 6
则输出为:
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
#include//冒泡排序升序
void bubblesort(int a[], int n)
{
for (int i=0; i < n - 1; i++)
for (int j=0; j < n-1 - i; j++)
{
if (a[j] > a[j + 1])
{
int temp = a[j + 1];
a[j + 1] = a[j];
a[j] = temp;
}
}
for (int i = 0; i < n-1; i++)
{
printf("%d ", a[i]);
}
printf("%d", a[n-1]);
}
//选择排序降序
void selectsort(int a[], int n)
{
for (int i = 0; i < n - 1; i++)
{
int temp = i;
for (int j = i + 1; j < n; j++)
{
if (a[temp] < a[j]) //查找剩余部分最大值
{
temp = j;
}
}
if (temp != i)
{
int m = a[i];
a[i] = a[temp];
a[temp] = m;
}
}
for (int i = 0; i < n-1; i++)
{
printf("%d ", a[i]);
}
printf("%d", a[n-1]);
}
int main()
{
int n, a[10] = { 5, 2, 8, 9 ,10, 1, 3, 4 ,7 ,6 };
n = 10;
for (int i = 0; i < 10; i++)
{
scanf_s("%d ", &a[i]);
}
bubblesort(a, 10);
printf("\n");
selectsort(a, 10);
return 0;
}
c语言编程 排序,C语言编程-9_3 排序相关推荐
- PTA 基础编程题目集 7-27 冒泡法排序 C语言
PTA 基础编程题目集 7-27 冒泡法排序 C语言 将N个整数按从小到大排序的冒泡排序法是这样工作的:从头到尾比较相邻两个元素,如果前面的元素大于其紧随的后面元素,则交换它们.通过一遍扫描,则最后一 ...
- 排序算法的实现。用C语言编程实现冒泡排序、选择排序、插入排序、shell排序、快速排序、堆排序算法、归并排序。利用随机函数产生N个随机整数(10000以上)。
#include<stdio.h> #include <time.h> #include<stdlib.h> #define N 10000 double T, T ...
- c语言常考的编程题,C语言操作题常考编程题库
<C语言操作题常考编程题库>由会员分享,可在线阅读,更多相关<C语言操作题常考编程题库(32页珍藏版)>请在人人文库网上搜索. 1.C语言编程题覆盖到的算法:1.个人所得税计算 ...
- 求最大公约数c语言实验心得,C语言编程实训报告(合集)
cout< void main()//主函数主函数主函数主函数 { int i,g; studentstu[3];while (i){i=menu(stu,3); switch(i) {case ...
- 【Golang第8章:面向对象编程】Go语言的结构体是什么,怎么声明;Golang方法的调用和声明;go语言面向对象实例,go语言工厂模式;golang面向对象的三大特性:继承、封装、多态
介绍 这个是在B站上看边看视频边做的笔记,这一章是Glang面向对象编程 这一章内容较多,内容有Go语言的结构体是什么,怎么声明:Golang方法的调用和声明:go语言面向对象实例,go语言工厂模式: ...
- 为了让孩子入门编程,Scratch的设计者操碎了心!谈谈Scratch编程环境和语言中的设计理念
您好,感谢您一直对少儿编程.对"与非学堂"的关注.为了更好地为大家服务,诚邀您填写一份<关于少儿编程教与学的课件资源素材需求调查>,https://www.wjx.cn ...
- 青少年软件编程(C语言)等级考试试卷目录一览
青少年软件编程(C语言)等级考试试卷目录一览 持续更新中...... 2022-12-10 C语言等考一级 T1. 加一 T2. (a/b)*c的值 T3. 判断是否存 ...
- C语言程序设计入门之抽象编程
C语言程序设计入门之抽象编程 前言 1. 程序入门抽象:变量和过程抽象 2.程序结构抽象:顺序.选择.循环 3.程序进阶抽象:问题(算法)抽象 4.软件工程抽象:函数(模块或问题分解)抽象 5.面向对 ...
- 青少年软件编程(C语言) 等级考试试卷(五级)2021年12月
青少年软件编程(C语言) 等级考试试卷(五级)2021年12月 1.书架 题目描述 John最近买了一个书架用来存放奶牛养殖书籍,但书架很快被存满了,只剩最顶层有空余. John共有N头奶牛(1 ≤ ...
- c语言考试成绩评价规则编程,上海市高等学校计算机二级C语言程序设计考试大纲.doc...
上海市高等学校计算机二级C语言程序设计考试大纲.doc 上海市高等学校计算机二级C语言程序设计考试大纲上海市高等学校计算机等级考试(二级)C 程序设计考试大纲上海市高等学校计算机等级考试(二级)C 程 ...
最新文章
- Java 集合类详解
- 如何在Ubuntu中使用dpkg命令卸载软件
- java动态添加属性_java – 动态添加对象的属性
- SQL优化:从设计表结构开始(层次型表结构设计方法)
- spring in action 读书笔记
- 大数据量分页存储过程效率测试附代码
- AirFlow常见问题汇总
- linux Kernel Map
- 渲染百万网页,终于找到影响性能的原因了
- 滑铁卢大学计算机科学双录取,滑铁卢大学双录取要求
- Codeforces Testing Round #1_C. Circular RMQ
- SpringBoot两种定时任务(Spring Schedule 与 Quartz 整合 )实现
- VS2010调试技巧
- HTML与JSP页面的区别
- 后续:安装ORK功能包踩坑之路和解决方案
- 个人财务管理系统mysql_开发个人财务管理系统(一)建数据库
- springcloud之gateway的使用
- egret 里面设置MovieClip的scale缩放值时,没有效果的情况
- 姓名签名设计手写简单自己名字怎么写
- Building fresh packages...