求1到10的平方和,以下这个程序为什么编译的结果不对?

/* 累加器 */
import javax.swing.JOptionPane;
public class Example
{
public static void main(String[]args)
{
int sum =0;
for(int k = 1;k<=10;k++)
{
sum = sum + k^2;
}
JOptionPane.showMessageDialog(null,"1^2+2^2+3^2+....+10^2 =" + sum);
System.exit(0);
}
}

推荐  (0) | 3人关注关注
3个答案
3 0

书海软件测试工程师

2013-04-25 19:51

因为在Java语言中,^符号并不表示幂运算。如果要算平方值,可以使用k*k来表示。

顺便,^符号的含意是异或,它是一个位运算符。A^B的值为:

  1. 将A和B表示成二进制,然后相应位置进行运算;
  2. 如果相应位置上的值相同,则结果为0;
  3. 若不同,则结果为1。


画成表格大约是这样的:
^ 0 1
0 0 1
1 1 0

举例:
A = 0011 1100
B = 0000 1101
A^B = 0011 0001

0 0

class A
{
public static void main(String[] agrs)
{
int a;
Scanner reader = new Scanner(System.in);
System.out.print("输入一个整数:");
a = reader.nextInt();
System.out.println(a);
}
这个编程}哪里出错了?

0 0

大哥,谁告诉你Java里可以用^表示求幂运算了- -|||
只能用*进行乘法,或者使用库函数

查看更多

添加回答

登录 后回答问题,你也可以用以下帐号直接登录

相关问答

关于我们 加入果壳 媒体报道 帮助中心 果壳活动 家长监控 免责声明 联系我们 移动版 移动应用

©果壳网    京ICP证100430号    京网文[2015] 0609-239号    新出发京零字东150005号     京公网安备11010502007133号

违法和不良信息举报邮箱:jubao@guokr.com    举报电话:18612934101    网上有害信息举报专区    儿童色情信息举报专区