| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1307 人关注过本帖
标题:Runtime Error问题 急。。。。
只看楼主 加入收藏
C王之王
Rank: 1
来 自:南京
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-6-5
收藏
 问题点数:0 回复次数:14 
Runtime Error问题 急。。。。
题目是:
输入:输入有多组,每组有2行,第一行是学生人数N(1<=N<10000),第二行有N个整数,分别表示每个学生的成绩(0到1e9)。当输入的N为0的时候结束程序。

输出:对于每组输入,输出只有一行,即第3名学生的成绩,如果找不到,则输出No such score !

这个是自己的程序 谁能告诉我为什么judge时出现Runtime Error的错误

急。。。。

#include<stdio.h>
#include<stdlib.h>
int main()
{
long int i,j,N,a[10000];
printf("请输入个数:\n");
scanf("%ld",&N);
while(N)
{printf("请输入成绩:\n");
for(i=0;i<N;i++)
scanf("%ld",&a[i]);
for(j=0;j<N;j++)
  {
    int k=0;
    for(i=0;i<N;i++)
    {
      if(a[j]<a[i])
      k++;
      if(k==3)
          break;
    }
    if(k==2)
    {
        printf("第三名成绩为%ld\n",a[j]);
        exit(1);
    }
}
printf("No such Score!\n");
return 1;
}
return 1;
}
[[it] 本帖最后由 C王之王 于 2008-6-20 21:46 编辑 [/it]]

[[it] 本帖最后由 C王之王 于 2008-6-20 21:52 编辑 [/it]]
搜索更多相关主题的帖子: Runtime 
2008-06-20 21:42
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
OJ?OJ不允许有任何额外输出的……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-20 21:57
C王之王
Rank: 1
来 自:南京
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-6-5
收藏
得分:0 
回复 2# StarWing83 的帖子
....那么那些printf里不要写那么多了?

其实我是一个演员
2008-06-20 22:01
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
事实上,除了输出答案,你根本就不需要printf……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-20 23:24
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
输出:对于每组输入,输出只有一行,即第3名学生的成绩,如果找不到,则输出No such score !

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-20 23:25
C王之王
Rank: 1
来 自:南京
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-6-5
收藏
得分:0 
回复 5# StarWing83 的帖子
改成这样还是Runtime Error错误
#include<stdio.h>
#include<stdlib.h>
int main()
{
long int i,j,N,a[10000];
scanf("%ld",&N);
while(N)
{
for(i=0;i<N;i++)
scanf("%ld",&a);
for(j=0;j<N;j++)
  {
    int k=0;
    for(i=0;i<N;i++)
    {
      if(a[j]<a[i])
      k++;
      if(k==3)
          break;
    }
    if(k==2)
    {
        printf("%ld\n",a[j]);
        exit(1);
    }
}
printf("No such Score!\n");
return 1;
}
return 1;
}

其实我是一个演员
2008-06-21 08:53
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
输入有多组,每组有2行,第一行是学生人数N(1<=N<10000),第二行有N个整数

while(scanf("%ld",&N)!=EOF)
{
for(i=0;i<N;i++)
scanf("%ld",&a[i]);
...

}

你确定不是抄的别的网站上的标程?只有网站上的程序才有可能掉了[i]这样的符号。而且题目明确指出,是每组输入都有两行。具体输入的方法已经给你了,你在...的地方自己补充算法好了。

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-21 09:51
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
还有,N小于1e5,原则上不需要long。

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-21 09:52
C王之王
Rank: 1
来 自:南京
等 级:新手上路
帖 子:49
专家分:0
注 册:2008-6-5
收藏
得分:0 
回复 8# StarWing83 的帖子
恩。。谢了啊

其实我是一个演员
2008-06-21 10:18
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
其实我很想知道……AC了没?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-21 10:28
快速回复:Runtime Error问题 急。。。。
数据加载中...
 
   



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

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