一、乙個價值三天的bug
int fscanf(file *stream,char const *format,...)
int scanf(char const *format,...)
int sscanf(char const *string,char const *format,...)
功能從輸入源讀取字元。函式的返回值就是轉換的輸入值的數目。
//出現錯誤,格式碼d,十進位制整型資料,並按有符號數儲存,如果整型引數比預設的整型引數更長或者更短時,在格式**中省略限定符就是乙個常見錯誤。
//限定符 h ,修改有些格式**的含義,hd不再是預設整型,而是short int
二、浮點數比較
程式中這麼做f1==f2,可是明明相等但是程式中卻按不相等的去做了,浮點數不能這樣去比較;如
float f=25.095;
if(f==25.095)printf(、、、);//結果判斷f不等於25.095,這是因為計算機表達浮點數時不能確切表示,故將25.095表達為25.0949999。
應該如此比較判斷:
if( fabs(f1-f2) < 預先指定的精度 )//精度0.00000001
浮點運算後,結果在存入記憶體中會產生捨入,這很可能會帶來誤差,因此,我們應當盡量使用高精度的資料型別,比如用gcc的時候,我們盡量使用long double而非double、float,這會減少相當多的錯誤機會。作為一般的比較,你設定好差值精度再比較就行了。
完整的比較:
bool isequal(float a, float b, float abserror, float relerror )
C語言實戰(二)
1 迴圈左移函式 rotl 和迴圈右移函式 rotr rotl 將乙個無符號整形數左迴圈移位的函式 原形 unsigned rotl unsigned value,int count 功能 將value向左迴圈移動count位。返回值 將value向左迴圈移動count位後的值。頭文件 stdlib...
讀《Go 語言實戰》
英文版書名 go in action william kennedy brian ketelsen eirk st.martin 著2017年3月 第 1 版 go 語言是現代的,快速的,帶有乙個強大的標準庫。內建對併發的支援 使用介面作為 復用的基礎模組。一,go語言介紹 二,快速開始乙個go程式...
R語言實戰MDS
原理戳這裡 超愛學習 機器學習演算法 mds降維演算法 zhuanlan.zhihu.com 1度量mds 衡量距離用歐式距離,對鳶尾花資料進行降維 圖1使用歐式距離對鳶尾花資料進行mds降維 2度量mds 衡量距離使用曼哈頓距離,對鳶尾花資料降維 library stats library ggp...