#include<stdio.h>
int main()
{
int i,j,k,n=0;
for(i=1;i<2019;i++)
{
for(j=1;j<2019;j++)
{
for(k=1;k<2019;k++)
{
if((i<2019)&&(j<2019)&&(k<2019)&&(i!=j)&&(i!=k)&&(j!=k)&&(i+j+k==2019))
{
n++;
}
}
}
}
printf("%d",n);
return 0;
} 有疑问,为什么我写的这个代码没有输出东西???
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
4条回答 默认 最新
cpp_learners 2021-03-05 13:16关注至少会输出 0
if((i<2019)&&(j<2019)&&(k<2019)&&(i!=j)&&(i!=k)&&(j!=k)&&(i+j+k==2019))当满足你写的这个条件,n才会自增(n++),变成其他数字,最后就输出n的结果;如果全部循环都不满足,那么他至少会输出0;或者说,循环次数过多,cpu还在运算当中,等会就会有输出结果了!另外,帮你计算过了,该程序需要循环八十多亿次,肯定会有些耗时。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报