@AC君:这题好奇怪,是不是有格式错误?
2026-07-07 20:56:50
发布于:浙江

她的for和if总共只有一个花括号,真的好奇怪,请求AC君帮帮我。




全部评论 8
else 绑定错误:本意是循环全部结束后再输出 0#,但现在每次循环不满足 if 就输出 0#;
边界未处理:
N=2:循环条件 i<2 不成立,for 一次都不执行,直接无任何输出;
N=1:循环不执行,无输出;
输出标记混乱:题目想质数输出 0、合数输出 1,但逻辑被语法错误完全打乱。
内容由AI生成,请仔细甄别。5天前 来自 天津
2我也是怎么想的,所以懵了。
5天前 来自 浙江
1
更新了第 题中代码的缩进,应该会清楚一些,代码本身正确性不受影响。
不写花括号
{}时,循环结构和分支结构都只包含接下来的一句代码。如果想包含多句代码,需要使用{}表示包含范围。平时为了明确包含范围,一般我们养成都写{}的习惯。for() if() 语句1 语句2for(){ if(){ 语句1 } } 语句2这两个代码是同样效果的,可以参考一下。
4天前 来自 浙江
1好的

4天前 来自 浙江
0
会不会是if括号是齐的但是for没有括号
5天前 来自 浙江
1可能吧。
5天前 来自 浙江
1aigo里USACO的题怎么这么少...
5天前 来自 浙江
1
代码炸了应该
6天前 来自 浙江
1这是题目呀,我也不懂他啥意思。



5天前 来自 浙江
0


这两道的花括号也没了,到底是啥回事?




6天前 来自 浙江
1这个试卷我刚做完选择判断就懵了,编程题都没做。
6天前 来自 浙江
1没问题啊,for循环仅当循环体包含且仅包含一条语句可以省略,后面的语句会被是为循环体外的
6天前 来自 浙江
2啊?那是我没见识。



5天前 来自 浙江
1
这个,疑似是对的,只是码风有点史
4天前 来自 广东
0这个没有问题吧
4天前 来自 浙江
0看起来是
int N, i; cin >> N; for (int i = 2; i < N; i++) if (N % i == 0) { cout << "1#"; break; } else cout << "0#";其实就是
for (int i = 2; i < N; i++) if (N % i == 0) { cout << "1#"; break; } else cout << "0#";就只是if有{},else和for是没有括号的,加上去是这样子的
for (int i = 2; i < N; i++) { if (N % i == 0) { cout << "1#"; break; } else { cout << "0#"; } }所以这个告诉我们,一定要加{},不然会让人看不懂
4天前 来自 浙江
0
4天前 来自 浙江
0
注意到28这张考了,你要加油了
4天前 来自 浙江
0鸡到了

4天前 来自 浙江
0





































有帮助,赞一个