1樓:自我程式設計
方法一:通過數學方法判斷分數是否是無限迴圈小數,需要確定分子分母是否互質,另外還要判斷小數從第幾位開始無限迴圈,比較麻煩。
方法二:直接講分數運算結果轉換成字串,然後寫函式進行字串比較。**如下:
#include
#include
int checkanswer(char solution,char answer);//檢查回答是否與答案匹配,是返回1,否返回0
int main()
return 0;
}int checkanswer(char solution,char answer)//檢查回答是否與答案匹配,是返回1,否返回0
{int i,len1=strlen(solution),len2=strlen(answer),len;
if(len2>len1)
len=len1;
else
len=len2;
for(i=0;i
2樓:匿名使用者
可以這樣:
int a,b;
float c;
c=(int)(a*10.0/b+0.5)/10.0;
這樣就可以讓結果c只保留一位小數。只是將a/b保留一位小數的結果賦給c,並不改變a/b本身的值,因此a/b仍然是0.333...
3樓:匿名使用者
浮點表示有誤差,所有判斷基於字串比較,輸入識別為字串,計算結果使用sprintf轉成字串,然後配合strncmp()比較
#include
#include
int main()
4樓:伱i汝非吾
我暫時想到的方法是,乘十的倍數,取整,除回去,其實只需要一行語句,但這樣還是隻有一個值,c變成0 3後就不再是1/3了
c語言中除法怎麼取得小數?
5樓:一棵無所不知的小白菜
1、開啟c-free,新建檔案。
2、輸入以下內容:(以除法為例)
#include
main()
float a,b,c;
printf("請輸入被除數:");
scanf("%f",&a);
printf("\n請輸入除數:");
scanf("%f",&b);
c=a/b;
printf("\n%f÷%f=%f\n",a,b,c);
3、按f5執行,得到結果。
4、float a,b,c;意思是設定三個名為a,b,c的浮點變數,區別於整形變數(int a,b,c;)和字串變數(char a,b,c;),浮點變數是可以帶小數的數值變數。
5、scanf("%f",&a);表示將你輸入的數字以帶6位小數的形式儲存於a中。
6、c=a/b; 是一個賦值語句,意思是將a除以b的值給c。四則運算中,加法運算子為+,減法為-,乘法為*,除法為/。
7、如果只想保留三位小數,可以在%f中間加.3,即printf("\n%.3f÷%.3f=%.3f\n",a,b,c)。
8、當然%.3f與%d一樣前面的%f與後面變數按順序一一對應即可。
6樓:匿名使用者
除了一開始用float進行定義之外,
後面進行除法運算的時候要加.0,
否則算出的結果電腦會自動取整~~
如:3/2的結果和3.0/2的結果就不同~~因為沒有定義3/2為浮點型,所以3/2自動取整,結果等於1
而3.0/2,由於預先用浮點型表示
其結果顯然為:1.5
希望對你有所幫助~~
7樓:豬自逍遙
做除法的時候吧其中一個數寫成或定義成單精度或雙精度不就行了~!
8樓:匿名使用者
輸入的時候寫成小數,如5/2=2,而5.0/2=2.5或5/2.0=2.5.
9樓:匿名使用者
將變數宣告成float或double即可,或將非int/long型別強制轉化成float或double(用括號).
10樓:匿名使用者
%.2f 2表示取小數點後2位
11樓:
假設有 x,y兩個變數
(double)x/y - (int)x/y 就是小數部分
12樓:
你可能都是用int 的吧
小數要用float
c語言中如何保留一位小數點
13樓:雙魚貝貝
採納率:52%12級2015.05.17
可以通過printf函式中的輸出格式說明符來實現保留一位小數點。回
具體實現方法見答下例:
float a = 3.14159;
printf("%.1f", a); // 輸出結果為3.1
更一般的形式如下:
printf("%x.yf", a); // 其中x, y都是常量,a是待輸出的變數。
// 對於變數a的整數部分輸出,如果a的整數部分不足x位,則在前面補空格,若大於x位,則按實際位數輸出
// 對於變數a的小數部分輸出,如果a的小數部分不足x位,則在後面補0,若大於x位,則按四捨五入準則輸出y位小數
一鍵還原類軟體的備份檔案。使用ghost explorer軟體開啟,可以檢視該檔案的內容。此檔案不可刪除!刪除了以後就無法恢復系統了。
14樓:a羅網天下
可以通過printf函式中的復輸出制
格式說明符來實現保留一位小數點,要保留一位小數就用printf("%.1f",x),例子如程式中給出那樣。
例子如下:
直接編譯,程式輸出結果如下圖所示:
15樓:匿名使用者
可以通過printf函式bai中的輸出格式說明du符來實現保留zhi一位小dao
數點,要保留一位小數就用
回printf("%.1f",x),例子如程式中給答出那樣。直接編譯,程式輸出結果如下圖所示:
擴充套件資料:1.printf("%3.
0f",floatnum):不保留小數說明:%3.
0f表明待列印的浮點數(floatnum)至少佔3個字元寬,且不帶小數點和小數部分,整數部分至少佔3個位寬;注意:這裡的3只代表整數部分至少佔3位,捨棄小數點和小數點後面的部分。2.
printf("%6.2f".floatnum):
保留兩位小數說明:%6.2f 表明待列印的數(floatnum)至少佔6個字元寬度(包括兩位小數和一個小數點),且小數點後面有2位小數,小數點佔一位,所以整數部分至少佔3位。
注意:這裡的6是待列印的數至少佔據的字元寬度,包括兩位小數(如果小數不夠兩位用0補位,例如100.1列印出來為100.
10)和一個小數點,所以整數部分至少佔3個字元寬度。
16樓:四甫
給小學生講c++求平均數及保留小數點&&賦值運算
17樓:天雲一號
可以通過printf函式中抄的輸出格式bai說明符來實現保留一位小數du點。
具體實現方法見zhi下dao例:
float a = 3.14159;
printf("%.1f", a); // 輸出結果為3.1
更一般的形式如下:
printf("%x.yf", a); // 其中x, y都是常量,a是待輸出的變數。
// 對於變數a的整數部分輸出,如果a的整數部分不足x位,則在前面補空格,若大於x位,則按實際位數輸出
// 對於變數a的小數部分輸出,如果a的小數部分不足x位,則在後面補0,若大於x位,則按四捨五入準則輸出y位小數
18樓:匿名使用者
printf("%.1f",x)
19樓:匿名使用者
printf("%.1f",x);
好像是這樣
c語言 除法 保留 兩位小數
20樓:匿名使用者
t = rand()%500; //要有問題應該是這句,[0,5]是個閉區間,所以應該模501
t = rand()%501;
21樓:匿名使用者
#include
#include
int main()
你想要的是這種結果嗎?
22樓:
s=0.01*t應該可以,你試試
c語言中怎麼表示除法,C語言中怎麼表示除法
5處以2這樣寫 5 2結果是取整數的也就是等於2 是除法取餘數好好看看數吧 c語言中除號用 表示,相應的,乘號用 表示 a b 表示a除以b,但是需要注意,當a b均為整形時,運算為求出不大於商的最大整數,如10 7 1,5 2 2,13 4 3 相對應,a b表示求a除以b的餘數 如果要實數除法,...
C 程式設計中怎樣表示保留n位小數
用c 怎麼輸出小數點後n位的方法 包含標頭檔案 include 用setprecision n 設定精度,其中n表示精確到小數點後n位 例子 double t 3.33333333 cout 輸出就是8位精度小數 你仍然可以用上面這些語句。此外,以可以看下面的例子 使用setprecision n ...
求問m的n次方的c語言程式,c語言計算m的n次方要求輸入mn輸出m的n次方
include include void main printf m的n次方為 容 d n s include void main printf m d m c語言 計算m的n次方 要求輸入m n 輸出m的n次方 include void main 已在vc檢測 include stdio.h ma...