标题:求大神看看这个为什么错误
只看楼主
猴开森
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2016-11-27
结帖率:60%
 问题点数:0 回复次数:4 
求大神看看这个为什么错误
题目描述

有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数x,请将该数插入到序列中,并使新的序列仍然有序。

输入

输入数据包含多个测试实例,每组数据由两行组成,第一行是n和m,第二行是已经有序的n个数的数列。n和m同时为0标示输入数据的结束,本行不做处理。

输出

对于每个测试实例,输出插入新的元素后的数列。

样例输入

3 3
1 2 4
0 0

样例输出

1 2 3 4


#include<stdio.h>
int main()
{
    int n,i,a[120]={0},*p,c[120]={0},j=0;
    while(scanf("%d%d",&n,&a[0])!=EOF)
    {
         if(n==0&&a[0]==0)
            break;
            for(i=1;i<=n;i++)
            {
                scanf("%d",&a[i]);
            }
            p=a;
            p++;
            while(*p!=0)
            {
                if(*p<a[0])
                {
                    c[j]=*p;
                    j++;
                    p++;
                }
                if(*p<a[0]&&*(p+1)>a[0])
                {
                    c[j]=*p;
                    j++;
                    c[j]=a[0];
                    j++;
                    p++;
                    c[j]=*p;
                    p++;
                }
            }
            for(i=0;i<n;i++)
            {
                printf("%d ",c[i]);
            }
            if(i==n)
                printf("%d\n",c[i]);
    }
    return 0;
}
搜索更多相关主题的帖子: include 标示 元素 
2017-01-25 00:11
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
有序插入。
静态的找到插入位置时将之后的一起后移一位。
动态的可按插入位置分前后两块,用块移动处理:前块 + 插入 + 后块。


2017-01-25 06:41
猴开森
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2016-11-27
得分:0 
大致思路是这样,但是怎么让n和m同时为0标示输入数据的结束
2017-01-25 11:26
猴开森
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2016-11-27
得分:0 
大致思路是这样,但是怎么让n和m同时为0标示输入数据的结束
2017-01-25 11:26
炎天
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:桃花岛
等 级:贵宾
威 望:29
帖 子:1218
专家分:4986
注 册:2016-9-15
得分:0 
while(scanf("%d%d",&n,&a[0]) && (n!=0 || a[0]!=0))

早知做人那么辛苦!  当初不应该下凡
2017-01-25 12:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-473818-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.184175 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved