CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  新手乐园

c语言中2的N次方怎么输入?清高手解答

楼主wangjianqun()2006-10-28 10:09:51 在 C/C++ / 新手乐园 提问

我是初学者 请问各位高手2的N次方怎么输入啊? 问题点数:20、回复次数:23Top

1 楼qxbnit(蓝灵)回复于 2006-10-28 10:14:14 得分 0

int   n   =   0;  
  scanf("%d",&n);  
                      --------不是高手Top

2 楼Jokar(贪睡鼠)回复于 2006-10-28 10:15:51 得分 0

1  
  2  
  4  
  8  
  16  
  32  
  。。。。。  
  :)Top

3 楼wanfustudio(雁南飞:知识之败,慕虚名而不务潜修也)回复于 2006-10-28 10:29:02 得分 0

输入x,y  
  pow(x,y)  
   
  if   x=2  
   
  输入y  
  pow(2,y)  
   
  #include<math.h>Top

4 楼mstlq(面色铁路桥)回复于 2006-10-28 10:53:19 得分 0

求乘方的函数是pow  
  template<class   Type>  
        complex<Type>   pow(  
              const   complex<Type>&   _Base,    
              int   _Power  
        );  
  template<class   Type>  
        complex<Type>   pow(  
              const   complex<Type>&   _Base,  
              const   Type&   _Power  
        );  
  template<class   Type>  
        complex<Type>   pow(  
              const   complex<Type>&   _Base,  
              const   complex<Type>&   _Power  
        );  
  template<class   Type>  
        complex<Type>   pow(  
              const   Type&   _Base,  
              const   complex<Type>&   _Power  
        );  
   
  #include   <complex>  
   
   
  求2的n次方可用  
  pow(2,n);Top

5 楼wangjianqun()回复于 2006-10-28 11:18:34 得分 0

哦 知道了谢了!Top

6 楼morphymorphy(叔,人家还小啦~~ =_=)回复于 2006-10-29 03:05:10 得分 0

这样比较好玩。。  
   
  #define   N   13                      
  #include   "stdio.h"  
  main()  
  {  
      int   i=2;  
      printf("%d\n",   i<<N);  
  }  
   
  不过N值不能太大。。。Top

7 楼gjb999(老鼠老鼠还是一只老鼠!)回复于 2006-10-29 14:16:27 得分 0

用函数.Top

8 楼gaoyuansnow()回复于 2006-10-29 14:24:44 得分 0

多看看库函数Top

9 楼sanlanglang(新手上路)回复于 2006-11-26 12:32:04 得分 0

自己编的,上机运行过!但,机器有字长的限制,数不能太大!!!  
  main()  
  {  
      int   i,N;  
      long   int   s=1;  
      scanf("%d",&N);  
      for(i=1;i<=N;i++)  
            s=s*2;  
      printf("\n%d\n",s);  
  }Top

10 楼keiy()回复于 2006-11-26 12:43:42 得分 0

2的n次方,最快的方法是移位:  
  2的0次     1<<0;  
  2的1次     1<<1;  
  2的2次     1<<2;  
  2的3次     1<<3;  
  ...Top

11 楼arrowcy(长弓手)回复于 2006-11-27 01:05:59 得分 0

楼上的方法不行吧?Top

12 楼arrowcy(长弓手)回复于 2006-11-27 01:08:59 得分 0

不好意思,搞错了……Top

13 楼zhangchangsheng()回复于 2006-11-27 11:23:55 得分 0

课本上的例题就别拿上来了好吧~~!Top

14 楼runnerterry()回复于 2006-11-27 13:05:49 得分 0

keiy()   说得对  
   
  移位效率最高Top

15 楼runnerterry()回复于 2006-11-27 13:07:24 得分 0

每移一位相当于乘以2Top

16 楼VCLIFE(linux&&qt)回复于 2006-11-27 19:25:56 得分 0

不能输入,自己写函数Top

17 楼atiansk2006(到中流击水, 浪遏飞舟)回复于 2006-11-28 10:31:09 得分 0

嗯Top

18 楼vvoody(vvoody)回复于 2006-11-28 11:03:17 得分 0

位移能移多远啊?  
    2<<9999999  
  可以吗?Top

19 楼m00ners(M00N)回复于 2006-11-29 13:50:08 得分 0

powTop

20 楼oleen()回复于 2006-11-29 16:46:38 得分 0

比较赞成用移位运算,快捷  
  2<<NTop

21 楼vvoody(vvoody)回复于 2006-12-01 21:44:52 得分 0

用位移有什么限制吗?有什么要注意的?Top

22 楼Benjaminzbj()回复于 2006-12-02 13:06:51 得分 0

必须为int,char,__int64,long   long,short   int,  
  也就是说,最大到2^63-1这么大了Top

23 楼tlqde521()回复于 2006-12-03 02:18:57 得分 0

#include<math.h>  
  输入x,y  
  pow(x,y)  
   
  if   x=2  
   
  输入y  
  pow(2,y)  
   
  Top

相关问题

关键词

得分解答快速导航

  • 帖主:wangjianqun

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo