非情報系学生のための C/C++ 入門
本ページの資料は私 (金丸) が 2008 年度から工学院大学にて行っている講議「プログラミング演習 I」の資料に基づいています。
機械系学生が対象であるので、細かな文法にこだわることより画像処理などの具体例を用いて
プログラミングの本質をつかんでもらうことを重視しています。
そのため内容はある程度限定せざるを得ませんが、このページで学んだ内容を足掛かりにして、
各自が C/C++ の自習を継続するための実力をつけてくれればよいと思います。
なお本講義の内容を、ブラウザ上で動作するオンラインコンパイラで学べるよう
若干簡略化した「
オンラインコンパイラで C/C++ を自習しよう
」も公開していますのでお好みでどうぞ。
2020.07: Visual Studio 2019 で演習を行えるよう加筆しました。
第一回
ガイダンス
何故プログラミングを学ぶのか
コンソールアプリケーションとGUIアプリケーション
初めての C/C++ プログラミング(コンソールアプリケーション)
コンソールへの表示の練習
変数の利用と四則演算
課題
第二回
コンピュータ上の数値の表現
用語を正しく覚えよう
プログラムを実行するとはどういうことか
コンピュータ上の数値の表現 (1) 0 を含む正の整数の2進数による表現
コンピュータ上の数値の表現 (2) 負の数を含む整数の2進数による表現~2の補数表現
C/C++ で正負の整数を確認
課題
第三回
GUI と画像処理プログラミング
初めての C/C++ プログラミング(GUIアプリケーション編)
配布したGUIアプリケーションの概略
画像処理アプリケーションをいろいろと変更してみよう
課題
第四回
文の構造/演算子
文の構造
C/C++ における演算子
課題
第五回
for 文とif 文
for 文による繰り返し
if 文および if~else 文
for 文と if 文を組み合わせる
課題
第六回
配列
配列の基本
配列の実用例
[おまけ] スライダによる閾値の調節
課題
第七回
関数
関数の基本
関数~課題を解くための準備
課題
第八回
メモリとアドレス
見ためを気にしよう~タブによる字下げ
メインメモリとは何か
メインメモリとアドレス
課題
第九回
配列と関数を用いた際のメモリ配置
スタック領域上での配列の配置
関数内の変数のメモリ配置
課題
第十回
アドレスとポインタ
コンソールへの表示に関する補足
アドレスとポインタ (1)
アドレスとポインタ (2)
課題
第十一回
配列とポインタ
配列を指すポインタ
new 演算子によるメモリの動的確保
関数に配列へのポインタを渡す
課題
第十二回
ここで頭を整理しよう
手続き型プログラミングとオブジェクト指向プログラミング/コンソールとGUI
コンソールアプリケーションってどう使われているの?
オブジェクト指向プログラミングとは
課題
第十三回
クラスを作って&使ってみよう
テレビクラスを作ってみよう
何故クラスを使うのか?
ドット演算子とアロー演算子
課題
第十四回
オブジェクトの集合
Student クラスを作ってみよう
Studentクラスの様々な呼び出し方
Studentクラスの配列とコレクション
課題
金丸隆志の講義資料
に戻る