PDFファイルの印刷 |
【学内】PDFファイルリーダーで印刷可能です。PDFファイルでの配布のpdfのリンクをクリックしてください。現われる講義録を で印刷してください。 |
 |
PDFファイル閲覧・印刷にはPDFファイルリーダーが必要です。 |
 |
無償で使用できる高性能なPDF作成ソフト |
|
|
|
第4回:三つの基本構造(PDFファイルでの配布:c4.pdf)(Web版は更新されていません、pdfをご覧下さい) |
|
目次
1.順次処理
2.選択処理
プログラム例(repo5.c)
3.文字コード
4.反復処理
プログラム例(repo6.c)
第四回目レポート

|
【2】選択処理 条件で場合わけする 「もし〜なら〜」、「〜へスイッチ」 |
|

C言語では条件式は「0か1」という数値になります。

よく使うのは「大小関係」です。で、これは
で表現されます。関係演算子で結ばれた式はその条件が

になります。(教科書101ページの8・1・1「大小・同値関係」参照)
aとb? |
関係演算子 |
aとbの関係 |
関係演算子 |
等しい |
a==b |
等しくない |
a!=b |
より大きい |
a>b |
以上 |
a>=b |
より小さい |
a<b |
以下 |
a<=b |
状態 |
真偽 |
値 |
条件が満たされた場合 |
TRUE(真) |
1(0以外) |
条件が満たされなかった場合 |
FALSE(偽) |
0 |
条件式が複数個あるときの関係は
で表現します。
条件の関係式 |
論理演算子 |
XかつY |
X&&Y |
XまたはY |
X||Y |
Xでない |
!X |
よくある間違い?????
(教科書103ページの8・2「if文による制御」参照)



プログラム:キーボードから入力
入力された文字がアルファベットの小文字は大文字に、大文字は小文字に変換して表示し、アルファベット以外はベルを鳴らす
文字コード A〜Z:65〜90 a〜z:97〜122


大文字・小文字を区別するのは「プロの人たち」もよく使うので、関数として用意されている。命令仕様書は「stdio.h, conio.h, ctype」。
文字を扱う関数
標準入力から1文字を受ける |
getchar( ) |
#include <stdio.h> |
書式 |
c=getchar( ); |
結果 |
文字コード(数値)がcに入る。 入力文字を画面に表示する。 |
標準出力へ1文字出力する |
putchar(c) |
#include <stdio.h> |
書式 |
putchar(c); 或いは putch(c); |
結果 |
文字コードcを文字として画面に表示する。 |
アルファベット大文字か? |
isupper(c) |
#include <ctype.h> |
結果 |
cが大文字(A〜Z)の時、0以外の値(真)。 |
アルファベット小文字か? |
islower(c) |
#include <ctype.h> |
結果 |
cが小文字(a〜z)の時、0以外の値(真)。 |
大文字から小文字へ変換 |
tolower(c) |
#include <ctype.h> |
書式 |
x=tolower(c); |
結果 |
cが大文字(A〜Z)の時のみ、小文字のコードがxに入る。 |
小文字から大文字へ変換 |
toupper(c) |
#include <ctype.h> |
書式 |
x=toupper(c); |
結果 |
cが小文字(a〜z)の時のみ、大文字のコードがxに入る。 |
規則正しく変化する時に、最後まで反復させる場合に使用する。
反復回数に着目
1月から12月まで12回変化させる

ときは、月の数値を覚えておく変数を例えばiとして、iを1から12まで変化:
条件成立している間
例えば
結局、1月から始まって12に等しくなるまで変化させるときは:

九九のプログラム

学生証番号と氏名を明記すること
必ず表紙を付け、このレポート問題を印刷し表紙の次にいれること
(A4レポート用紙)
を2点づつとrepo5.cを参考にして
A)文字の数値のところを対応する文字コード表記('A'等)を使用して書き変えた
プログラム
実行したときの画面コピー
B)更にA)のプログラムを4ページの文字操作関数「isupper, islower, toupper, tolower」を使用して書き変えた
プログラム
実行したときの画面コピー
|
【参考1】
if(isupper(c)){

}
else if(islower(c)){
}
else{
ここは大文字・小文字以外の時
}
【参考2】
 |
|
のそれぞれ2点づつを提出すること。C)ここでは説明してないが、ifの代わりにswitchという命令を使用しても同じ動作をするプログラムが作れる。教科書106ページ8・3を参考にして、repo5.cを書き換えなさい。
プログラム
実行したときの画面コピー
の2点を提出すること。
- 2)repo6.cのプログラムの
の2点と
- A)画面に表示されたとき、きれいに表示されるようにした
⇒
- B)更にA)のプログラムをforの代わりにwhileを用いて書き直した
のそれぞれ2点づつを提出すること。
|