题目描述
给出 n n n 和 n n n 个整数 a i a_i ai,求这 n n n 个整数中最小值是什么。
输入格式
第一行输入一个正整数 n n n,表示数字个数。
第二行输入 n n n 个非负整数,表示 a 1 , a 2 … a n a_1,a_2 \dots a_n a1,a2…an,以空格隔开。
输出格式
输出一个非负整数,表示这 n n n 个非负整数中的最小值。
1.题目分析
该题只要考查的排序,这里可以选择的排序方法有很多:
冒泡排序,选择排序,插入排序,甚至你可以使用效率较高的快速排序。
一些高级语言如Java,c++可以直接调用封装好的API.。文章来源:https://www.toymoban.com/news/detail-620981.html
2.题目思路
键入数据,存储到整型数组,数组大小可以设置成100,因为c语言中不支持动态数组的定义。
然后进行冒泡排序,所谓冒泡就是循环n-1次,每循环一次相邻元素之间进行比较一轮,
从而在边界索引处确定一个最值,
为优化算法内部循环次数需要做一些删减,
当然也可以直接不删减,内外循环n次也可以实现排序。文章来源地址https://www.toymoban.com/news/detail-620981.html
3.代码演示
#include <stdio.h>
int main() {
int arr[100];
int n, a;
scanf("%d", &n);
//键入数据,存入数组中
for (int i = 0; i < n; ++i) {
scanf("%d", &a);
arr[i] = a;
}
int temp;
//冒泡排序
for (int i = 0; i < n - 1; ++i) {
for (int j = 0; j < n - i - 1; ++j) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
//打印第一个元素
printf("%d",arr[0]);
return 0;
}
到了这里,关于P5718 【深基4.例2】找最小值的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!