プログラミング実習II (2026) 課題
教科書 p. 66 の [リスト 3.1] を入力して実行することで,double 型の最大値,最小値,精度,および int 型の最大値と最小値を表示せよ(結果をレポートに記す).さらに, char 型の最大値と最小値を表示(結果をレポートに記す)するようプログラムを追加せよ.
printf の書式は,char 型と int 型に関しては %d を,double 型については,%g を用いること.
char 型の変数は,int 型と同様整数を扱うものであるが,8 ビットで数値を表現するため,その範囲は -128~127 (あるいは, 0 ~ 255,教科書 p. 65 上から4行目参照)となる.このことを理解するため,以下の作業を行え.
char 型にした上でコンパイル・実行し,計算結果の変化を確認せよ.a = 50, b = 100 に変更した上で計算結果について報告・説明せよ.[リスト 3.8] を入力し,コンパイル,実行せよ.
次に,このプログラムを書き換え,「~日~時間~分~秒は~秒です」という表示ができるようにして,5 日 22 時間 54 分 41 秒が何秒であるか求めよ.日数を表す int 型変数を d とする.(正解は 514481 秒であるため,正しく表示されることを必ず確認すること)
以下のようなプログラムを作成せよ.計算結果が一致するものや一致しないものがあるならば,教科書 pp. 93~96,pp. 100~104 を参考にしてその理由をレポートに記せ.なお変数への代入はプログラム内で直接行うものとし,キーボードから入力させる必要はない.
int 型の変数 s, t, u と double 型の変数 x を宣言する.s に 34 を,t に 8 を代入する.u = s / t" として変数 u の値を %d を用いて表示する(整数を整数で割っている(pp. 93~94)ことに注意).u の値を %f を用いて表示する(通常,u の値とは異なるデタラメな数値が表示される).x = (double)s / t" として変数 x の値を %f を用いて表示する(変数 s をキャスト(p. 103)した上で混合演算(p. 100)が行われている).
コンピュータでは,文字・数字も2進数で表現されている.特に,ASCIIコードと呼ばれる文字コードでは,基本英数字(0-9, a-z, A-Z)や記号(# や & など)は,それぞれ 7桁の2進数(7ビット)に対応付けられている.従って,これを高々127以下の10進数や16進数の整数で表すことが可能である.
C 言語では,ASCII コードを char 型の変数で表現できるようになっている.各文字/記号/数字の 2進数,16進数および10進数表現については,教科書の表3.9 および 付録1 (p. 398)を参照せよ.
char 型の変数に格納されることを確認せよ.char 型変数 a, b, c を書式を %d とした printf で表示することで,文字 'x','1', '%' がそれぞれどのような整数で表されているかを観察し,教科書の表3.9 および 付録1 (p. 398)でその妥当性を確認せよ.教科書の[リスト 3.4]を入力し,コンパイル・実行せよ.表示された結果が何を表すかレポートに記せ.その上で,2つの小文字をそれぞれ別の小文字に置き換えた上で,コンパイル・実行し,正しく計算と表示が行われることを確認せよ.
教科書の[リスト 3.5]を入力し,コンパイル・実行し,正しく動作することを確認せよ.
次に,キーボードからアルファベットの小文字を入力させ,大文字に変換して表示するプログラムに書き換えて提出せよ.提出前に動作確認を行うこと.
プログラミング実習IIの受講に当たり,以下の観点から自身のプログラミングスキルや抱負などについてレポートに書いて下さい(記述内容は評価に影響しません).プログラムの提出はありません.