在各种竞争站点编码时,许多人一定遇到过NZEC错误。顾名思义,NZEC(非零退出代码)发生在代码无法返回 0 时。当代码返回 0 时,表示它已成功执行,否则它将根据错误类型返回其他数字。
当程序结束时,它应该返回“0”以指示是否完成正常并且无法这样做会导致 NZEC。当然,与NZEC相关的案例更多。
#为什么会发生NZEC?(一个例子)
在python中,通常,多个输入用逗号分隔,我们使用input()或int(input())读取它们,但是大多数在线编码平台在测试时都会给出用空格分隔的输入,在这种情况下,int(input())无法正确读取输入并显示像NZEC这样的错误。
#如何解决?
例如,想想一个简单的程序,你必须读取 2 个整数并打印它们(在输入文件中,两个整数在同一行中)。假设您有两个整数,如下所示:
23 45
而不是使用 :
n = int(input())
k = int(input())
用:
n, k = raw_input().split(" ")
n = int(n)
k = int(k)
用空格分隔输入。
错误的代码
n = int(input())
k = int(input())
print n," ",k
正确的代码
n, k = raw_input().split(" “)
n = int(n)
k = int(k)
print n,” ",k
#NZEC错误的一些突出原因
无限递归或堆栈内存不足。
输入和输出都与测试用例不完全相同。
作为在线平台,使用与您的输出与指定输出完全匹配的计算机代码测试您的程序。
当程序执行基本编程错误(如除以 0)时,也会显示此类错误。
检查变量的值,它们可能容易受到整数流的影响。
NZEC错误的发生也可能有一些其他原因,我列出了常见的原因。