C语言问题,科学计数法
发布网友
发布时间:2022-04-22 19:53
我来回答
共2个回答
热心网友
时间:2023-06-23 11:18
long 表示变量类型 long int, 不是 float, 不是 double,
输出格式 long int, 要用 %d
double a = 42.321e2;
printf("%lf",a);
就对了。追问long a = 42.321e2;
那你说我存入内存空间的是什么呢?
就简单说下 字面常量42.321e2 是什么类型啊?
还有:
int k = 100;
printf(“%f\n”,k); // 我知道这个输出结果是0.000000
是把k先转换成float类型在输出,还是直接按float类型的格式读出数据输出啊?
追答存入时已对 long int 初始化为 4232. 整型。
字面常量42.321e2 编译时是字符串。临时存入常数区为E格式浮点数double型。(由编译器定)。
printf(“%f\n”,k); 看成联合体 k=100;
union u { int k; float f;} U;
U.k = 100;
printf("%f\n",U.f);
热心网友
时间:2023-06-23 11:18
浮点型和整型在内存中的存储的虽然都是0、1但是表示的意义不同。float中第一位(第一个bit)表示符号。2-9位表示指数。其余23位表示小数部分。
c语言科学计数法怎么用
在C语言中,科学计数法可以通过使用指数表示数值的方法来表示非常大或非常小的数。指数部分用大写或小写字母’e’或’E’来标记,后面紧跟指数的值。例如,1.23e4表示1.23乘以10的4次方,即12300;而1.23e-3表示1.23乘以10的-3次方,即0.00123。以下是一个使用科学计数法表示数值的示例:include ...
c语言科学计数法怎么打?
1、使用浮点数常量和整数常量来表示科学记数法:double number1=2.5e3;//表示2.5乘以10的3次方。double number2=1.2e-4;//表示1.2乘以10的-4次方。2、使用科学记数法表示法表示浮点数的常量:double number3=1.234e-5;//表示1.234乘以10的-5次方。double number4=6.02e23;//表示6....
c语言输出运用%g如何输出123.45e-6,我现在输出的结果是1.2345e-8_百度...
你提出的问题关键在于理解科学记数法的正确表示方式与预期输出之间的差异。科学记数法要求表示一个数为一个1与10之间的实数(尾数)与一个10的次幂的积。因此,如“123.45e-6”这种格式并非标准科学计数法的正确表示。根据科学记数法的定义,“123.45e-6”应转换为“1.2345e-4”形式。为解决输出...
C语言题目
首先说第一个问题:简单地说%e为科学计数法输出,在计算机上表示为:数字e+n、数字e-n(10的n次方或负n次方)。至于%与e之间的内容为对输出的控制。此处:-6.2 -代表左对齐,6代表整个数字占六个格(若占不满空格补充)、2代表小数点后保留两位。所以结果为:-3.22e+003 第二个问题:defa...
...输出它的十六进制、八进制、十进制、科学计数法
//C语言:#include <stdio.h>int main(void){int a;scanf("%d",&a);printf("8进制:%o\n10进制:%d\n16进制:%x\n科学记数法:%e",a,a,a,a);return 0;}//C++:#include <iostream>using namespace std;int main(){int a;cin>>a;cout<<endl;cout<<"8进制:"<<oct<<a<<endl...
c语言中的科学计数法怎么使用?
c语言科学计数法e规则如下:1、每个C程序有且只有一个主函数main),且程序必须从main()函数开始执行,并在main()函数中结束。2、在C语言中,用e来表示科学计数法时,规定在e的前面必须有数字,后面必须为整数。3、用单引号括起来的一个字符常量只能存放一个字符;C语言中没有字符串变量,只能用字符...
C语言科学计数法e规则
c语言科学计数法e规则如下:1、每个C程序有且只有1个主函数main0且程序必须从man0函数开始执行,并在main0数中结束。2、在C语言中,用e来表示科学计数法时,规定在e的前面必须有数字,后面必须为整数。3、用单引号括起来的一个字符常量只能存放一个字符,C语言中没有字符串变量,只能用字符数组来...
c语言,输出科学计数法
include <stdio.h>#include <string.h> char num[110];char result[110];int len; int main(){int i,j;int s1,s2; //小数点位置,字符串首个非零数位置 int find1 = 0; int find2 = 0; //find1:是否找到小数点位置标志位,find2:是否找到首个非零数位置,0:表示未...
c语言科学计数法,输入2.123456 e 2输出21.23456,但是输入2.1234567 e 2...
同样 f1=f1*10.0 精度只能是 double. 有效数字14位左右。gets(a);for(i=0;i<strlen(a);i++) //循环到 strlen(a)if((a[i]=='E')||(a[i]=='e')){t=i;break;} // 这个计算没问题,多少位都对 printf("e at %d\n",t);for(i=0;i<t;i++) b[i]=a[i]...
C语言里要对输出的结果用科学计数法表示保留三位有效数字应该怎么写啊...
sorry.由于没有在计算机旁,没有及时看到你的求助,你问:C语言里要对输出的结果用科学计数法表示保留三位有效数字应该怎么写?我觉得应该是 printf("%.3e",变量名);而不是 printf("%3e",变量名);=== MSDN 中有关printf打印格式串:[flags] [width] [.precision] [{h | l | I64 | ...