アルゴリズムノート学習Part 1:C/C++クイック入門
5610 ワード
知識雑記 intタイプの使用範囲:一般的に10^9以内 long longタイプ2^31-1より大きい初期値に接尾辞LL を付ける必要がある0はNULL を表しますシフト演算子の使用(略) printf出力時、いくつかの手段を採用して出力フォーマットを規範化することができる:%md右揃え出力、スペースで%0 md右揃え出力を補い、0で補い.mfはmビット出力を保持し、四捨六入五成双 はgetcharとputcharを使用して文字を読み取り、出力することができます(getcharは改行を認識し、putchar出力時に自動的に改行することができます)(getcharは手動で入力0を必要とします) でよく使われるmath関数 より大きい配列はmain関数以外の に定義されるべきである. memset関数を使用して配列を初期化する(string.hを導入する必要がある): 共通文字関数 は、sscanfおよびsprintfを使用して文字列(正規表現をサポート) を処理することができる. C++の参照-コピーを生成せず、元の変数に対して別名 を付ける.構造体structについて:独自のタイプのポインタ変数をカスタマイズでき、構造関数を使用して を初期化できます. C++の別の入出力:cinとcont(iostreamとネーミングスペースstdを導入する必要がある) 浮動小数点数は、発生する可能性のある誤差のため、比較のために極小数epsを手動で導入する必要がある: 円周率π: scanf==EOFは入力終了(入力Ctrl+Zに等しい) を示す.マルチポイント入力制御:
double fabs(double x)
double floor/ceil(double x)
double pow(double r, double p) r p
double sqrt(double x) x
double round(double x) x
// : ———sin,cos,tan,asin,acos,atan
memset(a,0,sizeof(a));// a 0( 0 -1)
strlen(str)
strcmp(str1,str2) ( \0 ), /0/
strcpy(str1,str2) str2 str1
strcat(str1,str2) str1 str2, str2 str1
const double eps = 1e-8
#define Equ(a,b) ((fabs((a)-(b))) < (eps))
#define More(a,b) (((a)-(b)) < (eps))
#define Less(a,b) (((a)-(b)) < (-eps))
#define MoreEqu(a,b) (((a)-(b) > (-eps))
#define LessEqu(a,b) (((a)-(b) < (eps))
const double PI = acos(-1.0);
1.scanf(...) == n || EOF//
2.break// switch
3.int T;T--;//