當前位置:首頁 » 編程語言 » c語言科學計數

c語言科學計數

發布時間: 2022-06-12 07:52:19

c語言 科學計數法問題

精度不夠

2.23456789123456789123456789 e 20
2.23456789123456770000
223456789123456760000.000000

第二個數是a輸入後的列印結果,double支持不了這么多精度。不要輸入精度這么高的就沒有問題。

⑵ C語言 科學計數法

do {
a1[i++]=getchar();
}while (a1[i]!='.');
這兒的判斷不對,因為此時a1[i]還沒有值。

⑶ c語言編程 科學計數法

#include<conio.h>

#include<math.h>

#include<stdlib.h>

main(){

inti,j=0,k=1;

doubleqian,wan;

inthou;

char*q,*h,*p,chao1,chao2;

printf("pleaseInput:");

scanf("%s",p);

for(i=0;*(p+i)!='';i++){

if(*(p+i)=='E'||*(p+i)=='e'){

k=2;

continue;

}

if(k==1){

*(q+i)=*(p+i);

}else{

*(h+j)=*(p+i);j++;

}

}

for(i=0,j=0;*(p+i)!='';i++){

if(*(p+i)=='.'){k=1;continue;}

if(k==1)j++;

if(j==7)chao1=*(p+i);

if(j==8){chao2=*(p+i);break;}

}

qian=atof(q);

hou=atoi(h);

wan=qian*pow(10,hou);

if(j==7)printf("resultsis%lf%c0",wan,chao1);

elseif(j==8)printf("resultsis%lf%c%c",wan,chao1,chao2);

elseprintf("resultsis%lf00",wan);

getch();

}

⑷ c語言中的科學計數法。。一道題

_下劃線可以當成普通字母一樣使用,可放成任意位置,_a跟a_一樣,是變數名;
e是科計數法,如23e5,表示23*10^5,1e-1表示1*10^-1=0.1;
浮點數省略表示法:.5代表0.5,1.代表1.0
所以上面的表達式是錯誤的。如果改成
_a=-1.e-1就對了,此時_a=-0.1

⑸ 科學計數法 c語言

#include<stdio.h>
double fun(int n);
int main()
{
char a;
double x,t;
int i,n;

printf("請輸入數字:\n");
scanf("%lf",&x);

getchar();
a=getchar();
scanf("%d",&n);
if(a!='e'&&a!='E')
printf("操作有誤,請重試:\n");
t=x*fun(n);
printf("%.8lf\n",t);
}
double fun(int n)
{
if(n==0) return 1.0;
if(n>0) return 10.0*fun(n-1);
if(n<0) return 0.1*fun(n+1);\\這里換成+1就好了。呵呵,應該沒問題了
}

⑹ c語言,輸出科學計數法

#include<stdio.h>
#include<string.h>

charnum[110];
charresult[110];
intlen;

intmain()
{
inti,j;
ints1,s2;//小數點位置,字元串首個非零數位置
intfind1=0;
intfind2=0;//find1:是否找到小數點位置標志位,find2:是否找到首個非零數位置,0:表示未找到
intindex;

scanf("%s",num);
len=strlen(num);//讀取字元串長度

for(i=0;i<len;++i)//尋找原字元串中小數點與首個非零數的位置
{
if(find1&&find2)
break;

if(num[i]=='.'){
s1=i;
find1=1;
}
elseif(num[i]!='0'&&!find2){
find2=1;
s2=i;
}
}

if(s1-s2>0)//根據二個位置確定指數大小
index=s1-s2-1;
elseif(s2>s1)
index=s1-s2;

j=0;
for(i=s2;i<len;++i)//確定底數
{
if(num[i]=='.')
continue;
elseif(i==s2){//確定底數小數點位置

if(num[i+1]){
result[j++]=num[i];
result[j++]='.';
}
else
result[j++]=num[i];
}
else
result[j++]=num[i];
}
result[j]='';

printf("%se%d ",result,index);
return0;
}

⑺ C語言問題,科學計數法

long 表示變數類型 long int, 不是 float, 不是 double,
輸出格式 long int, 要用 %d

double a = 42.321e2;
printf("%lf",a);
就對了。

⑻ c語言從鍵盤上輸入一個科學計數法的數

#include<stdio.h>
intmain()
{doublea,b,c,d=600;
scanf("%lf%lf",&a,&b);
printf("a=%lgb=%lg ",a,b);
c=d*a*b*b;
printf("c=%lg ",c);
return0;
}

⑼ 關於在C語言中輸出科學計數法的問題

double
a
=
3.5e2;
double
a
=
3.5e0;
double
a
=
3.5e-2;
只能是字面常量,而且必須是整數,正負0均可。。
double
a
=
3.5e2.1;
//
小數不行。。
double
a
=
3.5e;
//
沒有指數也不行。。
int
i
=
2; double
a
=
3.5ei;
//
變數也不行。。

⑽ 關於C語言中的科學計數法問題。

double a = 3.5e2;
double a = 3.5e0;
double a = 3.5e-2;
只能是字面常量,而且必須是整數,正負0均可。。
double a = 3.5e2.1; // 小數不行。。
double a = 3.5e; // 沒有指數也不行。。
int i = 2; double a = 3.5ei; // 變數也不行。。

熱點內容
android列表顯示 發布:2025-02-07 17:01:19 瀏覽:63
芒果tv緩存的視頻在哪個文件里 發布:2025-02-07 16:45:05 瀏覽:814
php郵件群發 發布:2025-02-07 16:45:05 瀏覽:612
mysql資料庫基本語句 發布:2025-02-07 16:41:48 瀏覽:250
醫院門禁密碼多少 發布:2025-02-07 16:41:43 瀏覽:527
伺服器遭美國ip攻擊簽名 發布:2025-02-07 16:22:48 瀏覽:546
如何配置二良腌料 發布:2025-02-07 16:11:54 瀏覽:735
資料庫課程設計學生管理系統 發布:2025-02-07 16:11:50 瀏覽:764
美國文化密碼是什麼 發布:2025-02-07 16:07:14 瀏覽:261
安卓手機下雪特效怎麼p 發布:2025-02-07 15:49:30 瀏覽:319