1 条题解
-
0
这道题其实很简单,直接遍历找就行。
但是我这里想给你们科普一下冒泡排序。
首先是最基础的写法。
你每次输入的数都进行一次比较,只要更小就替换。
#include<stdio.h> int main(){ int n; scanf("%d", &n); int min = 1000000000; // 初始化为一个足够大的数 for(int i = 0; i < n; i++) { int a; scanf("%d", &a); if(a < min) min = a; } printf("%d", min); return 0; }然后就是冒泡排序,排完序是从小到大的顺序,只需要输出第一个数字就好了
#include<stdio.h> int main(){ int n; int a[1005]; // 根据题目数据范围开足够大 scanf("%d", &n); for(int i = 0; i < n; i++) { scanf("%d", &a[i]); } // 冒泡排序:从小到大 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]; a[j] = a[j+1]; a[j+1] = temp; } } } printf("%d", a[0]); // 排序后第一个就是最小值 return 0; }
信息
- ID
- 554
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 107
- 已通过
- 47
- 上传者