プログラミングⅡ

科目基礎情報

学校 久留米工業高等専門学校 開講年度 2017
授業科目 プログラミングⅡ
科目番号 1161 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 履修単位: 1
開設学科 電気電子工学科 対象学年 2
開設期 前期 週時間数 2
教科書/教材 教科書:開発ツールを使って学ぶ! C言語プログラミング,マイナビ,坂井弘亮 
担当教員 加藤 直孝

到達目標


1.ストラクチャーの配列を理解できる.
2.ポインターを使う高度なプログラムが解読できる.
3.Shell中でパイプ等を用いた色々なコマンド操作ができる.
4.Linux上のCUIからC言語のプログラムを開発できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1Shellとはプログラム言語でもあることが理解できる.Shell中でパイプ等を使った操作ができる.Shellがプログラム言語であることを理解していない.
評価項目2Linux上で簡単なmakefileを準備できる.Linux上でgccを使ったコンパイルができる.gccを使ったコンパイルができない.
評価項目3GDB等のデバッガーをプログラミングに役立てうる.GDBデバッガーを操作できる.GDBデバッガーのメッセージが分からない.

学科の到達目標項目との関係

教育方法等

概要:
1年生の続きで,C言語のポインターを理解した後,
Linux上でC言語のプログラミングに必要なツールを使えるようになることを目的とする.
特に,GUI(Graphical User Interface)ではなく,CUI(Character User Interface)を使った開発に重点を置く. 
授業の進め方・方法:
1年生の続きで,C言語のポインターを学習した後,教科書の例に従って授業を進める.授業でカバーできない例などは,自宅で入力および実行する必要がある.そのため,自分専用のPCを持っていることが望ましい.
PCの環境設定等は,教科書に詳しく記述があるので,授業開始前に準備しておくこと.1年で学んだ
C言語を使って各自プログラム作品を作る.春休み中にプログラム作品の構想を練っておくこと. 
注意点:
LinuxはPC上のOracle Virtualbox上にインストールするので,Linux専用のPC等の購入の必要はないが,WindowsノートブックPCが必要となる.また,Raspberry Pi上でも作業はできる.

評価方法詳細:
定期試験 30%,課題等その他 70% を目安として評価する. 60点以上を合格とする.再試は行わない.
   
   

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 オリエンテーション Linuxでのgccによるコンパイルを説明する
2週 Mulitidimensional Array 多次元配列とポインタの関係を理解できる.
3週 Pointer to strings ストリングが配列であることを理解できる
4週 Structures: Simple structure, nested structure 配列との対比でストラクチャーが理解できる.
5週 Array of structures ストラクチャーの配列を理解できる.
6週 Array of pointers to structures ストラクチャーへのポインタを使える.
7週 VM(Virtual Machine)とCentOS VMとは何か分かる
8週 Shellの操作 Shellの基本操作ができる.
2ndQ
9週 Shellのコマンド Shellのコマンドを試すことができる.
10週 C言語のコンパイル C言語をgccでコンパイルできる.
11週 プログラム作品発表会(1)  自分のプログラムを他人に説明できる.
12週 プログラム作品発表会(2) 他の発表におけるプログラムの内容が理解できる.
13週 プログラム作品発表会(予備) 他の発表におけるプログラムの内容が理解できる.
14週 プログラムのアーカイブ アーカイブを経験する.
15週 まとめ 全体を復習し理解する.
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
基礎的能力工学基礎情報リテラシー情報リテラシー情報を適切に収集・処理・発信するための基礎的な知識を活用できる。3
論理演算と進数変換の仕組みを用いて基本的な演算ができる。2
コンピュータのハードウェアに関する基礎的な知識を活用できる。3
数値計算の基礎が理解できる2
コンピュータにおける初歩的な演算の仕組みを理解できる。2
データの型とデータ構造が理解できる2

評価割合

試験発表相互評価態度ポートフォリオその他合計
総合評価割合302000050100
基礎的能力020000020
専門的能力3000003060
分野横断的能力000002020