したいことだけする

プロのプログラマになるまでの記録を書いていきます

c言語

フロイドの循環検出アルゴリズム

任意の連結リストの中にループがあるかどうか。あればループが開始するノードを見つけよ。 ってときフロイドの循環検出アルゴリズムを使う。(ウサギとカメのアルゴリズム) 1度に1動く低速のポインタと1度に2動く高速のポインタでリストを横断させる。 …

構造体の宣言

coffeeという構造体の宣言 struct coffee{ int x; float y; }; struct coffee型の 変数mochaを宣言 struct coffee{ int x; float y; } mocha; struct coffeeの型名をcoffeeとして定義 typedef struct coffee{ int x; float y; } coffee;

入力した文字を改行ごとに取得する(getchar)

getcharを使う。というかgetchar()の使い方。 char a, b[21]; int i = 0; while(i < 20 && (a = getchar()) != '\n' && a != EOF ) { b[i] = a; i++; } printf("output: %s\n", b);