2020-11-04

1146: 零起点学算法53——数组中插入一个数
Description
给定有序数组(从小到大),再给你一个数,要求插入该数到数组中并保持顺序

Input
多组测试,每组第一行输入一个整数n,然后是n个有序的整数
第二行输入1个整数m和1个整数K

Output
将整数m插入到原数组中保持顺序是升序,然后输出2行
第一行是插入以后的数组
第二行是插入以后的数组中下标值是K的数
n m k不超过20

Sample Input
3 1 2 5
3 1

Sample Output
1 2 3 5
2

Source
零起点学算法

1 #include<stdio.h>
2 int main(){
3 int n,a[50],b[50];
4 while(scanf("%d",&n)!=EOF){
5 for(int i=0;i<n;i++){
6 scanf("%d",&a[i]);
7 }
8
9 int m,k,j=0;
10 scanf("%d%d",&m,&k);
11 for(int i=0;i<n;i++){
12 if(a[i]<m){
13 b[j]=a[i];
14 j++;
15 }
16 else break;
17 }
18 b[j]=m;
19 j++;
20 for(int i=j-1;i<n;i++){
21 b[j]=a[i];
22 j++;
23 }
24
25 for(int i=0;i<j-1;i++){
26 printf("%d “,b[i]);
27 }
28 printf(”%d\n",b[j-1]);
29 printf("%d\n",b[k]);
30 }
31 return 0;
32 }
j的初始化需要在大循环while里面!!!
不要老是错这样的问题!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值