c - CodeChef 运行时错误“NZEC”问题“疫苗生产”(C 语言)
问题描述
我正在尝试使用 C 语言解决这个初学者问题: https ://www.codechef.com/problems/VACCINE1
您能否给我一个提示,说明下面的代码有什么问题?我收到运行时错误“NZEC”。
我怀疑这是枚举的问题,所以我用 in 变量替换了它,但问题并没有消失。
这是 CodeChef 页面中的解决方案代码(如果您喜欢这样查看): https ://www.codechef.com/viewsolution/40469687
我在 Visual Studio 的 C++ 项目中运行它。它在 Visual Studio 中正常运行,并且输出与问题陈述中的给定输出相匹配。
这是我的代码:
#include <stdio.h>
void main(void)
{
enum productionStatus {
CompanyA,
CompanyB,
BothCompanies
} companyProducing;
short int D1, V1, D2, V2, P, d = 0, day = 0, dayProductionStarts = 0, vaccineNo = 0;
scanf("%hd %hd %hd %hd %hd", &D1, &V1, &D2, &V2, &P);
if (D1 < D2) {
companyProducing = CompanyA;
day = D1;
} else if (D1 > D2) {
companyProducing = CompanyB;
day = D2;
} else {
companyProducing = BothCompanies;
day = D1;
}
if (companyProducing == CompanyA) {
while (1) {
vaccineNo += V1;
if (vaccineNo >= P) {
d = day;
break;
}
if (day == D2) {
companyProducing = BothCompanies;
break;
}
day++;
}
}
if (companyProducing == CompanyB) {
while (1) {
vaccineNo += V2;
if (vaccineNo >= P) {
d = day;
break;
}
if (day == D1) {
companyProducing = BothCompanies;
break;
}
day++;
}
}
if (companyProducing == BothCompanies) {
while (1) {
vaccineNo += (V1 + V2);
if (vaccineNo >= P) {
d = day;
break;
}
day++;
}
}
printf("%hd\n", d);
}
解决方案
NZEC 代表非零退出代码。对于 C 用户,如果您的 main 方法没有返回 0,则会生成此信息;陈述。如果抛出异常,其他语言(如 Java/C++)可能会生成此错误。
正如MM在评论中指出的那样,最后void main()
改为int main()
和return 0
。
推荐阅读
- javascript - 如何使用 sentry v5 全局忽略错误以减少噪音
- reactjs - React Material UI 主题更改
- python - 未找到带有参数“(”,)”的“about_abc”的反向
- bash - 并行 wget 下载 url 列表并重命名
- graphql - 如何为现有的 graphql-schema 创建动态文档?
- python - 函数返回无而不是元组
- data-science - 如何选择数据来替换数据集中的缺失值
- spring-boot - invalid_token:无法将访问令牌转换为 JSON
- java - 如何从 Spring Web 通配符路径变量中排除前导斜杠?
- python - 如何修复 sqlite3.Cursor' 对象没有属性 'fecthall'?