要求用java编写程序
急求解!!!
10个数,按从大到小排序,输入一个数,插入到原有数列中并保持从大到小的顺序不变,输出该数插入的位置
答案:1 悬赏:40 手机版
解决时间 2021-02-01 13:13
- 提问者网友:战魂
- 2021-01-31 19:04
最佳答案
- 五星知识达人网友:你哪知我潦倒为你
- 2021-01-31 19:22
public static void main(String[] args)
{
int[] nums={99,88,77,66,55,44,33,22,11,0};
int[] nums_new=new int[nums.length+1];
System.out.print("请输入一个整数:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
for(int i=0;i<nums.length;i++)
{
if(i==0&&num>=nums[i])
{
nums_new[i]=num;
for(int j=1;j<nums_new.length;j++)
{
nums_new[j]=nums[j-1];
}
break;
}
else if(i==9&&num<=nums[i])
{
for(int j=0;j<nums_new.length;j++)
{
if(j==nums_new.length-1)
{
nums_new[j]=num;
}
else
nums_new[j]=nums[j];
}
break;
}
else if(i!=9)
{
if(nums[i]>=num&&nums[i+1]<=num)
{
for(int j=0;j<=i;j++)
{
nums_new[j]=nums[j];
}
nums_new[i+1]=num;
for(int j=i+1;j<nums.length;j++)
{
nums_new[j+1]=nums[j];
}
}
}
}
for(int i=0;i<nums_new.length;i++)
{
System.out.print(nums_new[i] + " ");
}
}
很凌乱的感觉。。你试试看看有没有错误
{
int[] nums={99,88,77,66,55,44,33,22,11,0};
int[] nums_new=new int[nums.length+1];
System.out.print("请输入一个整数:");
Scanner sc=new Scanner(System.in);
int num=sc.nextInt();
for(int i=0;i<nums.length;i++)
{
if(i==0&&num>=nums[i])
{
nums_new[i]=num;
for(int j=1;j<nums_new.length;j++)
{
nums_new[j]=nums[j-1];
}
break;
}
else if(i==9&&num<=nums[i])
{
for(int j=0;j<nums_new.length;j++)
{
if(j==nums_new.length-1)
{
nums_new[j]=num;
}
else
nums_new[j]=nums[j];
}
break;
}
else if(i!=9)
{
if(nums[i]>=num&&nums[i+1]<=num)
{
for(int j=0;j<=i;j++)
{
nums_new[j]=nums[j];
}
nums_new[i+1]=num;
for(int j=i+1;j<nums.length;j++)
{
nums_new[j+1]=nums[j];
}
}
}
}
for(int i=0;i<nums_new.length;i++)
{
System.out.print(nums_new[i] + " ");
}
}
很凌乱的感觉。。你试试看看有没有错误
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯