当前位置:网站首页>每日练习------有10个数字要求分别用选择法从大到小输出
每日练习------有10个数字要求分别用选择法从大到小输出
2022-08-03 15:09:00 【北柠陌语】
题目: 有10个数字要求分别用选择法从大到小输出
解题关键:数字索引的互换
思路:1.创建数组
2.输入数据
3.找到最大的索引
4.索引互换
过程: 接下来我们根据我们的解题思路来一步步写代码
1.创建数组
int[] nums = new int[10];
2.输入数据
Scanner sc = new Scanner(System.in);
for (int i = 0; i < nums.length; i++) {
System.out.print("第" + (i + 1) + "位数为:");
nums[i] = sc.nextInt();
}
3.找到最大的索引
for (int i = 0; i < nums.length; i++) {
int index = 0;
for (int j = 0; j < nums.length - i; j++) {
if(nums[index] > nums[j]){
index = j;
}
}
4.索引互换
int temp = nums[nums.length - i - 1];
nums[nums.length - i - 1] = nums[index];
nums[index] = temp;
}
System.out.println("结果:");
for (int i = 0; i < nums.length; i++) {
System.out.print(nums[i] + " ");
}
完整结果如下:
为了方便大家使用,下面附上源码:
// 1.创建数组
int[] nums = new int[10];
// 2.输入数据
Scanner sc = new Scanner(System.in);
for (int i = 0; i < nums.length; i++) {
System.out.print("第" + (i + 1) + "位数为:");
nums[i] = sc.nextInt();
}
//选择法
// 3.找到最大的索引
for (int i = 0; i < nums.length; i++) {
int index = 0;
for (int j = 0; j < nums.length - i; j++) {
if(nums[index] > nums[j]){
index = j;
}
}
//4.索引互换
int temp = nums[nums.length - i - 1];
nums[nums.length - i - 1] = nums[index];
nums[index] = temp;
}
System.out.println("结果:");
for (int i = 0; i < nums.length; i++) {
System.out.print(nums[i] + " ");
}
总结:索引互换之后在进行数组遍历,再判断,大家可以用断点来一行行观看这个代码的运行
明日练习:求一个3*3矩阵对角线元素之和
大家可以自己写写,明天中午12点我准时发出我的写法哦,明天12点不见不散
一生朋友一生情,一生有你才会赢;千山万水总是情,点个关注行不行!
边栏推荐
猜你喜欢
随机推荐
【周报】2022年7月24日
PAT乙级-B1018 锤子剪刀布(20)
MySQL面试必备(一)基础篇
PAT乙级-B1015 德才论(25)
地球自转加快
STL简介
取消转义字符(r)
PAT乙级-B1017 A除以B(20)
王守创:多组学整合分析揭示植物代谢多样性的分子机制(8月2号晚)
问题4:什么是缺陷?你们公司缺陷的优先级是怎样划分的?
Day2:面试必考题目
Lecture 2 Software Life Cycle
PostgreSQL 每周新闻 2022-7-27
Jupyter Notebook 交互式编程 & 低代码拖拽式编程 | 数据科学生态下的理想平台
技术分享 | 接口自动化测试如何搞定 json 响应断言?
一对多查询(分页)
币圈提款机:Solana钱包出现未知安全漏洞 大量用户数字资产被盗
PAT乙级-B1010 一元多项式求导(25)
QT之Mysql驱动
liunx服务器nohup不输出日志文件的方法