标题:杭电——2019,自己调试没问题,提交不成功
取消只看楼主
小小程序猿
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:1
帖 子:755
专家分:2785
注 册:2013-7-18
结帖率:100%
已结贴  问题点数:30 回复次数:1 
杭电——2019,自己调试没问题,提交不成功
问题描述:有n(n<=100)个整数,已经按照从小到大顺序排列好,现在另外给一个整数x,请将该数插入到序列中,并使新的序列仍然有序。
Input:输入数据包含多个测试实例,每组数据由两行组成,第一行是n和m,第二行是已经有序的n个数的数列。n和m同时为0标示输入数据的结束,本行不做处理。
Output:对于每个测试实例,输出插入新的元素后的数列。
代码:
#include <iostream>
using namespace std;
int  main()
{
    int n,m,i,sign;
        int *arr;
    while( scanf("%d%d",&n,&m)!=EOF)
    {
        if(!(n==0&&m==0))
        {
            arr=new int[n+1];
            scanf("%d",&arr[0]);

            if(arr[0]>m)
            {
                arr[1]=arr[0];
                arr[0]=m;
                i=2;
                sign=n+1;
            }
            else
            {
                i=1;
                sign=n;
            }
            for(;i<sign;i++)
            {
                scanf("%d",&arr[i]);
               
                if(m>arr[i-1]&&m<arr[i])
                {
                    arr[i+1]=arr[i];
                    arr[i]=m;
                    i++;
                    sign++;
                }
            }
            if(m>arr[n-1])
            {
                arr[n]=m;
            }
            for(i=0;i<=n;i++)
            {
                printf("%d ",arr[i]);
            }
            printf("\n");
        }
    }
    return 0;
}

杭电提示:View Compilation Error
0_0_10524027_8187.c
\include\cerrno(18) : error C2143: 语法错误 : 缺少“{”(在“:”的前面)
\include\cerrno(18) : error C2059: 语法错误 : “:”
\include\cstdio(17) : error C2143: 语法错误 : 缺少“{”(在“:”的前面)
\include\cstdio(17) : error C2059: 语法错误 : “:”
\include\cstdio(17) : error C2143: 语法错误 : 缺少“{”(在“:”的前面)
\include\cstdio(17) : error C2059: 语法错误 : “:”
\include\cstdio(17) : error C2143: 语法错误 : 缺少“{”(在“:”的前面)
\include\cstdio(17) : error C2059: 语法错误 : “:”
\include\cstdio(18) : error C2143: 语法错误 : 缺少“{”(在“:”的前面)



等大神指点
搜索更多相关主题的帖子: include 标示 元素 
2014-04-11 22:56
小小程序猿
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:1
帖 子:755
专家分:2785
注 册:2013-7-18
得分:0 
以下是引用azzbcc在2014-4-12 01:26:38的发言:

C++的话为什么不用 cout ?

主要错在输出格式 最后一个数不跟空格

#include <stdio.h>

int main()
{
    int m, n, tmp;
    while (2 == scanf("%d%d", &n, &m) && n && m)
    {
        while (n--)
        {
            scanf("%d", &tmp);
            if (tmp > m)    break;
            printf("%d ", tmp);
        }
        if (0 < n) printf("%d ", m);
        else if (0 == n)
        {
            printf("%d %d\n", m, tmp);
            continue;
        }
        else
        {
            printf("%d\n", m);
            continue;
        }
        while (n--)
        {
            printf("%d ", tmp);
            scanf("%d", &tmp);
        }
        printf("%d\n", tmp);
    }
    return 0;
}


我试了试,还是没有 A

另外,如果我输入的 m 是 0的话,你的程序就挂了

孤独与寂寞是催化一个人迅速成长的良药,没有之一
2014-04-12 12:09



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




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

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