杭电ACM 2019 数列有序问题 输出错误

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

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

Input

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

Output

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

Sample Input
3 31 2 40 0

Sample Output
1 2 3 4

以上是问题
#include<stdio.h>
int main()
{
int n,m,i,j,a[101],t;
while(scanf("%d %d",&n,&m)!=EOF)
{
if(n==0 && m==0)
break;
a[0]=0; t=0; //初始化数据
for(i=1;i<=n;i++) //输入n个数据
{
scanf("%d",&a[i]);
if(a[i]>m) //每输入一个数据就进行判断 如果m小 将输入的数据推后一个 m占当前位置
{
t=a[i];
a[i]=m;
a[i+1]=t;
i++;
}
}

for(j=1;j<=n+1;j++) //输出n+1个数据
{
printf("%d",a[i]);
}
}

return 0;
}

不知道为什么出现溢出了,求大神指点
展开
 我来答
百度网友0ecab4f
2014-10-07 · TA获得超过1027个赞
知道小有建树答主
回答量:412
采纳率:0%
帮助的人:372万
展开全部
不知道你解决了没有,我有AC的代码,但是鉴于你已然采纳,我只好放弃上传了,可以私聊。我事先没看到你已经采纳,要不然连这句话我都不会写的。OJ上的题还是不要拿到度娘上,一般都是些没责任心的回答,可以跟身边的同学讨论讨论其实更有效果。顺便想问问今年的ACM竞赛你们学校的战果如何?有拿重要比赛的奖项么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
兔子和小强
2014-10-07 · TA获得超过6944个赞
知道大有可为答主
回答量:3332
采纳率:74%
帮助的人:1363万
展开全部
for(j=1;j<=n+1;j++)
{
printf("%d",a[i]);        // 这里写错了,下标应该是 j
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
笃侠6A
2014-10-07 · TA获得超过3734个赞
知道大有可为答主
回答量:3205
采纳率:75%
帮助的人:3209万
展开全部
printf("%d",a[i]); 中的a[i]应为a[ j ] 吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式