c++70分???

#include <iostream>
#include <cstdio>
using namespace std;

int main()
{
int a;
cin>>a;
printf("%d\n",(a>>16)+(a<<16));
return 0;
}

6 条评论

  • @ 2016-12-07 11:10:20

    为什么

  • @ 2016-12-07 11:10:14

    cout也是70分?

  • @ 2013-02-20 14:46:13

    刚说反了,cin是输入,cout是输出!

  • @ 2013-02-20 14:44:47

    你的开头用的是c++格式,#include <iostream>以及using namespace std;,在c++程序中输出输入要用cin和cout!
    printf是属于C里面的。

  • @ 2013-02-18 20:20:05

    使用unsigned int,对应*输出方式*也需要更改。
    使用

    cout << (a<<16) + (a>>16) << endl;

    即可

    • @ 2013-02-19 13:06:02

      请问为什么用printf不行呢???

    • @ 2013-02-19 13:56:37

      那要对应数据类型。unsigned int 对应的是%u

      printf("%u", (a>>16) + (a<<16));

      就可以了 .

    • @ 2013-02-19 14:04:44

      非常感谢!

    • @ 2013-02-19 14:08:39

      还有为什么用%d也能对一部分答案呢?

    • @ 2013-02-19 14:13:07

      %d是有符号型的。最左边一位的0/1表示正负。

      当结果的最左边一位为0的时候,%d和%U的输出相同。

      详细的话请google

    • @ 2013-02-19 14:16:59

      非常感谢!

    • @ 2016-12-07 11:10:37

      我用的cout也是70

  • @ 2013-02-18 17:29:41

    用 unsigned int

  • 1

信息

ID
1201
难度
3
分类
模拟 点击显示
标签
(无)
递交数
3713
已通过
1828
通过率
49%
被复制
13
上传者