① 在c語言和C++中的分數怎麼表示,請把程序寫出來下,比如表示1+2*2的倒數+3*3的倒數
分數就是用/來表示的。你看看笑面的程序熟悉下
題目:有一分數序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數列的前20項之和。
1.程序分析:請抓住分子與分母的變化規律。
2.程序源代碼:
#include "stdio.h"
main()
{
int n,t,number=20;
float a=2,b=1,s=0;
for(n=1;n<=number;n++)
{
s=s+a/b;
t=a;a=a+b;b=t;/*這部分是程序的關鍵*/
}
printf("sum is %9.6f\n",s);
getch();
}
② c語言,怎麼實現對分數<就是幾分之幾>的加減乘除等等的運算
定義一個數據結構,可以是一個長度2的數組,也可以是一個struct,下面以數組為例
定義兩個長度2的數組 a[2],b[2],分子分別保存在a[0],b[0],分母分別保存在a[1],b[1](負數的話,符號同分子一起)
乘:分母,分子分別相乘;除:乘以倒數(調換乘數的分子分母);然後約分(涉及最大公約數演算法,可網路)
加減:分母需要相同,涉及最小公倍數演算法(可網路)
以上思路和人工計算的方式相同,只是用c語言「翻譯」一下
另外提供一個思路,直接計算結果,然後從無限循環小數轉化成分數形式
③ 請教,C語言中怎麼輸出數的分數形式
沒有默認的分數形式
只能根據值
自己計算出分子和分母
然後
輸出兩個整型
比如
printf("%d/%d", a,b);
從浮點數轉為分數是不精確的 要計算分數, 最好的方法 就是最初就按照分數計算和存儲。
④ 請問在C語言中分數怎麼表示啊,即10/9
如果想保存成數值,只能保存小數值,10/9隻能保存它對應的小數值,也就是1.11111,這個小數值實際上是無限循環的,無限小數保存不了,
所以存在精度問題,即保存到小數點後幾位,一般用float或者double型變數保存小數,double精度更高一些。
如果必須要保存精確地10/9分數,可以使用字元串類型,保存「10/9」,這樣存下來的就不是一個數,只是普通的字元串,使用時可以做相應的轉換輸出。
⑤ c語言分子分母怎麼表示
c語言分子分母表示:float只有6位有效數字。
原因是計算機中數據是2進制存儲的,而且浮點數還有單獨的存儲格式,44.5474轉成二進制時不可能恰好轉成一個有限位數的二進制數,就算能,位數可能也超過了浮點數存儲格式中允許的位數。因此44.54。
簡介
C語言是一門面向過程的計算機編程語言,與C++、C#、Java等面向對象編程語言有所不同。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。C語言描述問題比匯編語言迅速、工作量小、可讀性好、易於調試、修改和移植,而代碼質量與匯編語言相當。
⑥ 請問在C語言中分數怎麼表示啊,即10/9
首先10/9是表達式,但是在C語言中沒有表示分數的形式,也就是當要以這種形式給出的時候C已經幫運算出結果了。所以你可以選擇兩種表達方式。
1、使用字元串,在使用使用時在轉化一下。
2、使用小數,就是1.1111...這種,申請一個Double型來儲存。
字元串就是 10/9 這種 char fenshu[]="10/9";當要使用的時候,還要再次轉換成Double型。所以說,想要的分數形式只是一個外表沒實際用處。
(6)c語言分式怎麼表示擴展閱讀:
字元串在存儲上類似字元數組,它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。
通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。
⑦ C語言 約分最簡分式
此即為求兩個數的最大公約數
最大公約數用歐幾里得演算法
int gcd(int a, int b)
{
if(0 == a%b)
return b;
return gcd(b, a%b);
}
int main()
{
int a,b,c;
scanf("%d %d", &a, &b);
c = gcd(MAX(a,b), MIN(a,b));
printf("%d %d\n", a/c, b/c);
return 0;
}
⑧ c語言幾分之幾是怎麼表示的
雖然我也是初學者,但是你這個問題我能解決!
(類型)(表達式)是強制轉換 由int i=1可知變數i是整形變數。double sum=0可知變數SUM為雙精度實數,1.0也是實數。
/是算數運算符表示除。/的兩邊的數的類型應該相同故可以用(double)i將i的數據類型強制轉換為double型也就是實數型來達到i 1.0 sum的類型相同方便C來計算。
while(i<21)
{
sum=sum+1.0/(double)i;
i++;
}
就是sun等於1+1/2+1/3····+1/20
除強制轉換外C中還有自動轉換你好好看看常量,變數,數據類型的知識把!
⑨ c語言含變數的分式怎麼寫,比如x分之一
int x=5;double xx=1.0/x;c語言里只能轉化為int float double