变式 4:排好了就提前收工
如果某一趟从头比到尾一次都没换,说明已经排好了,后面的趟数可以不做。输入 n(2 ≤ n ≤ 100)和 n 个整数,冒泡排序(从小到大),第一行输出排好的数,第二行输出实际做了几趟。例如输入: 4 2 1 3 4 第 1 趟换了一次,第
二级 · 程序填空:冒泡排序的三个空
下面程序用冒泡排序把 6 个数从小到大排列,输出 -3 0 2 5 8 11。请在【】处填入正确的内容。 #include <stdio.h> int main(void) { int a[6] = {5, 11, -
二级 · 程序改错:选择排序找最小
下面程序用选择排序把输入的 n 个整数从小到大排列后输出。例如输入 5 和 3 9 1 7 5,输出 1 3 5 7 9。 程序中有两处错误。请改正 found 下面一行中的错误,不要改动其他地方,也不要增删行。
二级 · 选择:10 个数冒泡要比较几次
对 10 个数进行冒泡排序,最坏情况下需要比较的次数是【0】。
作品:宿舍 1000 米排行榜
体测 1000 米,输入人数 n(n ≤ 20)和每个人的成绩(秒),从快到慢排出名次,成绩写成 分:秒(秒补足两位)。例如输入 2 和 245 201,输出: 第1名 3:21 第2名 4:05 程序把最慢的排到了第一。改好以后填上你们宿
二分查找每次看哪一个
有序数组里找 21:每次看中间那个,扔掉一半 2 5 9 13 17 21 26 mid 13 比 21 小:答案只可能在右边,low = mid + 1 a[mid] == 21:找到了,只比了 2 次 在一个从小到大排好的数组里找 x,
100 个数里找到要比几次
数组里放着 1, 3, 5, …, 199 这 100 个奇数,程序用二分查找找 151,输出下标和比较次数 75 6。先运行,看画布上每一次的范围怎么缩小;然后只改一个数,让它去找最后一个数 199,看看最多要比几次。 代码里以 @you
母题:选课名单里有没有我
输入选课人数 n(n ≤ 100)、n 个学号,最后输入你的学号 x。如果名单里有 x,输出它是第几个(从 1 数起,有重复时取第一个);没有就输出 没有。例如输入: 4 1032 1007 1015 1021 1015 输出: 3
变式 1:最后一次去自习室是哪天
n 天(n ≤ 100)里每天去的自习室编号记在数组里。输入 n、n 个编号和一个自习室编号 x,输出你最后一次去 x 是第几天;从没去过就输出 没有。例如输入: 5 301 205 301 410 205 301 输出: 3 现在的程序找
变式 2:被点名点到几次
一学期 n 次(n ≤ 100)随机点名,被点到的学号都记了下来。输入 n、n 个学号和你的学号 x,输出你一共被点到几次。例如输入: 5 12 7 12 30 12 12 输出: 3 现在的程序只回答了「有没有」。