c语言中2的n次方怎么表示

#include<stdio.h>
#include<math.h>
int main()
{
int n;double a=pow(2,n);
scanf("%d",&n);
printf("%d\n",a);
}
这个哪里错了

C语言有函数,需要头文件#include <math.h> 用pow(2,n)就可以表示2的n次方。

C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

扩展资料:

C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。

当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-20
#include<stdio.h>
#include<math.h>
int main()
{
 int n;
 scanf("%d",&n);
 double a=pow(2,n);
 printf("%lf\n",a);
}

追问

小数点怎么去掉

追答

printf("%.lf\n",a);
或者 printf("%d\n",(int)a);

本回答被提问者采纳
第2个回答  2014-11-07
a 声明为 double型,输出的时候应该用 %lf。追问

改了以后计算还是不对,
输入2,输出时1.000000

追答#include<stdio.h>
#include<math.h>
int main()
{
 int n;
 double a;
 scanf("%d",&n);
 a = pow(2,n);
 printf("%.0lf \n",a); // 1
 printf("%d \n", (int)a); // 2
}

变量必须先初始化再使用,所以scanf语句应该在a = pow(2,n)之前。

另外,小数点的问题:可以直接格式化输入整数部分后0位,即不输出小数点和小数部分,如注释1处;或者强制转换类型为int型后再输出,如注释2处。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网