① 关于C语言OJ提交问题
有这样几种情况:1.不同的编译器对变量的作用范围定义不同,所以建议将例如for()条件内定义的变量全部在main()函数内定义;2.大部分OJ只支持标准C库,所以在编译器上可用的一些函数在OJ上会无法识别;暂时只想到这么多,希望有所帮助
② 萌码oj总提示编译错误 各位帮忙看下
getch函数需要conio.h头文件,另外最好吧main函数声明为int类型,并在最后加return 0;这是规范,注释给出修改位置
#include<stdio.h>
#include<conio.h>///////////getch
intmain()///////////////
{
inthight[3];
intt;
inti,j;
scanf("%d%d%d",&hight[0],&hight[1],&hight[2]);
for(i=0;i<3;i++)
{
for(j=i+1;j<3;j++)
{
if(hight[i]<hight[j])
{
t=hight[i];hight[i]=hight[j];hight[j]=t;
}
}
}
if(hight[0]<=50)
{
printf("NOCRASH ");
}else{
for(i=0;i<=2;i++)
{
if(hight[2-i]>50)
{
printf("CRASH%d ",hight[2-i]);break;
}
}
}
//getch();/////////////////
return0;/////////////////////
}
③ 南阳理工OJ第一题A+B problem 用java编程在eclipse上能运行正确,为什么在OJ上提交时总是CompileError!
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
int a = cin.nextInt(), b = cin.nextInt();
System.out.println(a + b);
}
}
用这个试试
④ 急!C语言,一个题目,DEV C++编译没错,上交OJ后编译错误!
1、函数没有返回值。
2、sqrt()没有声明。可能是头文件<math.h>不同吧。
⑤ OJ说编译错误,哪有问题 #include<stdio.h> struct ST { i
原题应该是:有下列程序:#includestructtt{intx;structtt*y;}*p;structtta[4]={20,a+1,15,a+2,30,a+3,17,a};main(){inti;p=a;for(i=1;ix);p=p->y;}}程序的运行结果是()。A)20,30,B)30,17C)15,30,D)20,15,正确答案:D解析:题目中定义了一个全局结构体数组a,结构体中包含两个成员:一个int型变量x和一个自身类型指针y。所以,结构体数组a的初始化列表中每两个初始化一个结构体元素。主函数通过一个for循环,连续调用了两次输出函数printf(),每次输出p所指元素的x成员值。p初始化时指向数组a的首地址,即a[0]的位置,所以第1次输出的值为20。然后又将a[0]的成员y的值赋给p,y在初始化时是a+1,所以p在第2次输出时指向的元素是a[1],故第2次输出的值为15。所以本题最终输出结果是“20,15,”,应该选择D。
⑥ oj编译错误
函数里又定义其他函数,哪个编译器上都不可能通过。
⑦ oj错误67%
输出不符合题目要求的格式。
网络语言oj是信息学在线评测平台。OJ是OnlineJudge系统的简称,用来在线检测程序源代妈的正确性。OJ系统能够编译并执行代码,使用预设的数据对这些程序进行测试。提交的代码一在受限的环境下运行,包括时间限制、内存限制、安全限制等。
OJ系统最初使ACM-ICPC国际大学生程序设计竞赛和OI信息林匹克竞赛中的自动判题和排名。现广泛应世界各地高校学生程序设计的训练、参赛队训练和选拔、各种程序设计竞赛以及数据结构和算法的学习和作业的自动提交判断中。
⑧ 在浙大OJ系统提交代码一直出现Segmentation Fault!!!!!!!
C的数组下标从0开始,charstr[20]的最后一个元素是str[19]scanf("%s",str1[20]);printf("%s\n",str2[20]);if(str1[20]==str2[20]){这几句都越界访问内存了,会产生一个SIGSEGV信号引发段错误
⑨ DEVC++编译无error,但OJ说编译错误,哭辽,求大佬指教
原因很简单,如果是c++的话,你没有加using namespace std;
加在#include后面,不加oj就会判错。
就像我把#include <bits/stdc++.h>写成了#include <bits\stdc++.h>(斜杠写反了,有一次手误),dev的确不会报错,我放到oj上就一直编译错误。
⑩ 杭电oj1240,我觉得程序是对的,也能运行,但是OJ上编译错误,求解
/* Note:Your choice is C IDE */
#include "stdio.h"
void main()
{
int n,i=0,sum[100],loop=0,j=0,loob[100],t=0,m=1;
printf("请输入行数(回车结束):\n ");
scanf("%d",&n);
j=n;
while(n--)//while做到任意输入。
{
printf("第%d行:\n ",m++);
for(;;i++)
{scanf("%d",&sum[i]);
loop++;//标记
if (getchar()=='\n')
{i++;
break;}
}
{loob[n]=loop;//保存标记。
loop=0;}
}
for(m=1;j>0;j--)
for(;t<i;t++,m++)//使用标记。
{printf("%d ",sum[t]);
if(m==loob[j-1])
{m=1;t++;
printf("\n");
break;}}
//for(;j>0;j--)
//{for(;t<m+loob[j-1];t++)//使用标记。
//printf("%d ",sum[t]);
//m=m+t;
//printf("\n");}
}
//非常完美了。花了我很多时间。 因为不善于写,也没看过什么书,自己想的。 错了,别急,正在改。 接着排序。 (太复杂了,不写了。)