老师那里错了
int ge,shi,bai,n,q,p;
n=200;
do {
n++;
bai=n/100;
shi=n%100/10;
ge=n%10;
q=bai+shi+ge;
p=bai*shi*ge;
if (p==42&q==12);
}while (n<=300);
System.out.println(n);
0
收起
正在回答
1回答
同学你好,代码编写的不错,但是还有一点小问题:
1、if语句的编写语法不正确,不应该添加分号;因为分号;表示语句的结束,而在这个题目中,思路应该是判断三个数字的积是否为42,三个数字的和是否为12,如果满足条件则输出该数值,所以应该将输出语句放在if语句的代码体中。
具体修改如下:
2、建议将下面的&改成&&,可以提供代码执行效率。
综上所述,修改后的代码如下:
public static void main(String[] args) { int ge, shi, bai, n, q, p; n = 200; do { n++; bai = n / 100; shi = n % 100 / 10; ge = n % 10; q = bai + shi + ge; p = bai * shi * ge; if (p == 42 && q == 12) { System.out.println(n); } } while (n <= 300); }
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星