swust oj 616

题目描述

用选择法对N个学生的成绩按从大到小的顺序排序,N个学生的成绩整数用scanf 输入,输入的成绩在[0,100]之间。排序完成后,输入一个成绩,要求用逐个比较查找的方式找出该成绩是该组中第几个元素的值(即第几名)。如果该成绩不在数组中,则输出“no this score!”。 要求: 1、把排序算法写成函数形式,在主函数中输入N个数据,然后调用排序函数排序。 2、在排序过程中尽量减少数据的交换和移动。 3、把查找算法写成函数形式,在主函数中输入1个数据,然后调用查找函数查找。

输入

输出

样例输入

样例输出

源代码

#include<stdio.h>
int main()
{int i,n,m,a[50];int f(int a[],int n);int g(int a[],int n,int m);while(scanf("%d",&n)!=EOF){for(i=0;i<n;i++){scanf("%d",&a[i]);}scanf("%d",&m);//输入选择你想找的数a[n]=f(a,n);g(a,n,m);}return 0;
}
int f(int a[],int n)//书上重点讲过的排序代码
{int i,j,t;for(i=0;i<(n-1);i++){for(j=i+1;j<n;j++){if(a[i]<a[j]){t=a[i];//应用变量t实现两个数之间的顺序改变a[i]=a[j];a[j]=t;}}}for(i=0;i<n;i++){printf("%d",a[i]);if((i+1)%10==0 ||i==(n-1))printf("\n");elseprintf(" ");}return a[n];
}
int g(int a[],int n,int m)
{int i=0,j=0;while(i<n)//我试着用for循环,但是OJ不通过。但其实本身意义是相同的{if(m==a[i]){j++;break;}i++;}if(j!=0)printf("%d\n",i+1);elseprintf("no this score!\n");return 0;
}

SWUSTOJ#616排序查找相关推荐

  1. SWUSTOJ #616 排序查找

    SWUSTOJ #616 排序查找 题目 输入 输出 样例输入 样例输出 源代码 题目 用选择法对N个学生的成绩按从大到小的顺序排序,N个学生的成绩整数用scanf 输入,输入的成绩在[0,100]之 ...

  2. SWUST OJ 616: 排序查找

    题目描述 用选择法对N个学生的成绩按从大到小的顺序排序,N个学生的成绩整数用scanf 输入,输入的成绩在[0,100]之间.排序完成后,输入一个成绩,要求用逐个比较查找的方式找出该成绩是该组中第几个 ...

  3. 软件设计师16-数据结构02(排序/查找)

    排序 1 衡量排序算法质量 1)时间效率:排序速度 2)空间效率:占内存辅助空间的大小 3)稳定性:相等的两个数,排序后次序不变 排序方法 1 插入排序 1)直接插入排序:将第二到n个序列,依次与前n ...

  4. 常见数据结构和算法实现(排序/查找/数组/链表/栈/队列/树/递归/海量数据处理/图/位图/Java版数据结构)

    常见数据结构和算法实现(排序/查找/数组/链表/栈/队列/树/递归/海量数据处理/图/位图/Java版数据结构) 数据结构和算法作为程序员的基本功,一定得稳扎稳打的学习,我们常见的框架底层就是各类数据 ...

  5. 【数据结构与算法】【算法思想】【算法应用】【排序查找搜索】并行

    算法的目的就是为了提高代码执行的效率.当算法无法再继续优化的情况下,需要借助并行计算的处理思想对算法进行改造. 并行排序 假设要给大小为 8GB 的数据进行排序,最常用的是三种排序算法,归并排序.快速 ...

  6. java循环 排序 查找

    一.循环.排序.查找基础练习 1.求1~100奇数和偶数的和 代码: public class OddOrEvenSum {public static void main(String[] args) ...

  7. 常用排序+查找算法时间复杂度大集合

    排序算法: 查找算法:

  8. 数据结构与算法—二叉排序(查找)树

    目录 前言 树 二叉树 二叉排序(搜索)树 概念 构造 主要方法 findmax(),findmin() isContains(int x) insert(int x) delete(int x) 完 ...

  9. C语言学习记录(14)英文单词排序 查找最长的单词

    C语言学习记录 前言 一直自己没有学习做笔记的习惯,所以为了加强自己对知识的深入理解,决定将学习笔记写下来,希望向各位大牛们学习交流! 不当之处请斧正!在此感谢!这边就先从学习C语言写起,自己本身对程 ...

最新文章

  1. Matlab与线性代数 -- 矩阵的重组4
  2. python如何安装panda数据库_python怎么安装pandas
  3. 使用Linux建立拨号服务器
  4. 联不上网 Unable to initialize Windows Sockets interface. General failure.
  5. 【opencv】17.提取RBG各种颜色c++代码
  6. Machine Learning week 2 quiz: Linear Regression with Multiple Variables
  7. ifconfig命令找不到_Linux基本命令
  8. 内网通mac能用吗_纯干货!小容量Mac装外置硬盘Windows系统最完美的方案!(多图)...
  9. java方法带参数返回值_Java方法中的参数太多,第6部分:方法返回
  10. css和 js 改变html里面的定位。
  11. Leetcode 202.快乐数(哈希容器来检测是否出现重复)
  12. 再见 Feign!推荐一款微服务间调用神器,跟 SpringCloud 绝配!
  13. ES 11 - 配置Elasticsearch的映射 (mapping)
  14. LuoguP1041 传染病控制
  15. cad自动标注界址点_CAD自带“块属性”即可实现自动标注坐标
  16. 【Qt for Python官方教程】使用pyside6-rcc引入.qrc文件
  17. 传奇修改数据库后服务器异常,DBserver提示物品数据库加载错误的解决方法
  18. GeekTool介绍及Shell模式应用二则(以及df、cal、date、sed的使用)
  19. 中华酷联发展电商,警惕京东,且行且思考
  20. CVPR2022论文速递(2022.4.12)!共24篇!GAN/transformer/超分等

热门文章

  1. 将word文件中的文本转成字符串
  2. C++PrimerPlus 第二章 开始学习C++
  3. puppeteer 清空input原本的值
  4. Android开发新技术
  5. 活灵活现用Git--基础篇
  6. ckplayer html播放本地,本地化DPLAYER和CKPLAYER播放器自动下一集
  7. 最新极致cms精仿资源吧模板源码修复版
  8. java util zip.zipexc,JAVA解压zip压缩文件的实例
  9. 【C++】利用Unicode控制字符-RLO构造欺骗性文件后缀
  10. iOS学习笔记75-NSURLSession使用实战教程