ClangStudy/README.md

64 lines
1.9 KiB
Markdown
Raw Normal View History

2022-04-09 18:36:22 +09:00
# C言語学習
2022-04-25 20:21:19 +09:00
## このレポジトリについて
このレポジトリは私がC言語学習で躓いたところを復習を兼ねて作成したプログラムになります。
もし同じように躓いた方がいましたら、確認してみると参考になるかもしれません。
ただし、以下のことに注意してください。
- 基本的な文法がわかること
- 配列の渡し方がわかること
- 構造体の定義の仕方がわかること
- アルゴリズムを理解していること
- コメントは基本ないこと
2022-04-26 18:41:23 +09:00
## コンパイル
GCCを使用してコンパイルしています。
基本的には引数を特に指定してません。
作業環境により、GCCのバージョンが違うためここで明記しませんが、どのバージョンでも動くように作成しているつもりです。
`gcc quick_sort.c -o quick_sort`
2022-04-09 18:36:22 +09:00
### 構造体とポインタ
構造体とポインタについての学習
2022-04-22 20:22:28 +09:00
2022/04/09
2022-04-09 18:36:22 +09:00
#### 処理内容
1. 生徒配列を定義する
2. 生徒の各科目の点数を初期化する
3. ランダムに点数を生成する
4. 科目ごとの平均点、最大点、最低点を標準出力する
2022-04-22 20:22:28 +09:00
### クイックソート
数値配列のクイックソートを行う
2022-04-26 18:39:33 +09:00
2022/04/22 q_sort
2022/04/26 quick_sort
2022-04-22 20:22:28 +09:00
#### 処理内容
1. 配列と、左端(0)、右端(配列の長さ)を渡す
2. 左端が右端以上であるならピボットを取得する
3. ピボット左端のデータより小さければiをすすめる
4. ピボットのデータより大きければjを戻す
5. 中央値まで求めたらそのデータを比較し、入れ替える
6. i が j 以下であればループを行う
7. ピボットとjを入れ替える
8. ピボットより小さいデータをクイックソートする
9. ピボットより大きいデータをクイックソートする
2022-04-09 18:36:22 +09:00
# Copyright
Copyright (c) 2022 kema All Rights Reserved.